PTA基础编程题目集 7-9用天平找小球(C++语言实现)

发布时间:2026/8/5 0:14:20
PTA基础编程题目集 7-9用天平找小球(C++语言实现) 摘要本文是一道经典编程题的题解题目要求从三个重量不同的球中找出唯一重量不同的那个球并给出了易于理解的 C 代码实现。题目描述三个球A、B、C大小形状相同且其中有一个球与其他球重量不同。要求找出这个不一样的球。输入格式输入在一行中给出3个正整数顺序对应球A、B、C的重量。输出格式在一行中输出唯一的那个不一样的球。输入样例1 1 2输出样例C代码部分实现#includeiostream// 引入标准输入输出头文件usingnamespacestd;intmain(void)// 主函数{inta,b,c;// 定义三个球的重量变量cinabc;// 读入三个球的重量// 核心逻辑三个球中只有一个重量不同利用两两比较来定位// 如果A和B重量相同那么C必然是与它们不同的那个球if(ab){coutCendl;}// 走到这里说明A和B不同再判断A和C是否相同// 如果A和C重量相同那么B就是唯一不同的那个球elseif(ac){coutBendl;}// 前两个条件都不满足A不等于B且A也不等于C// 这意味着A与另外两个球都不同A就是那个唯一重量不同的球else{coutAendl;}return0;// 返回0表示程序正常结束}算法核心思路本题利用排除法思想通过两两比较即可定位唯一重量不同的球。首先比较A和B——若相等则C必然不同若不等则再比较A和C——若相等则B不同否则A不同。整个过程只需两次比较时间复杂度为O(1)是解决三球问题的最高效方案。算法流程图是否是否开始输入 a, b, ca b ?输出 Ca c ?输出 B输出 A结束

相关新闻