csp信奥赛C++高频考点专项训练:【排序算法】案例6:三角形的分类

📅 2026/7/28 1:08:19
csp信奥赛C++高频考点专项训练:【排序算法】案例6:三角形的分类
csp信奥赛C高频考点专项训练【排序算法】案例6三角形的分类题目描述给出三条线段a , b , c a,b,ca,b,c的长度均是不大于10000 1000010000的正整数。打算把这三条线段拼成一个三角形它可以是什么三角形呢如果三条线段不能组成一个三角形输出Not triangle如果是直角三角形输出Right triangle如果是锐角三角形输出Acute triangle如果是钝角三角形输出Obtuse triangle如果是等腰三角形输出Isosceles triangle如果是等边三角形输出Equilateral triangle。如果这个三角形符合以上多个条件请按以上顺序分别输出并用换行符隔开。输入格式输入 3 个整数a aa、b bb和c cc。输出格式输出若干行判定字符串。输入输出样例 #1输入 #13 3 3输出 #1Acute triangle Isosceles triangle Equilateral triangle输入输出样例 #2输入 #23 4 5输出 #2Right triangle输入输出样例 #3输入 #36 10 6输出 #3Obtuse triangle Isosceles triangle输入输出样例 #4输入 #41 14 5输出 #4Not triangle说明/提示当两短边的平方和大于一长边的平方说明是锐角三角形。当两短边的平方和等于一长边的平方说明是直角三角形。当两短边的平方和小于一长边的平方说明是钝角三角形。AC代码#includebits/stdc.husingnamespacestd;inta[4];// 存储三条边的数组intmain(){// 输入三条边的长度cina[1]a[2]a[3];// 对三条边进行排序a[1] ≤ a[2] ≤ a[3]sort(a1,a4);// 判断是否能构成三角形三角形任意两边之和大于第三边if(a[1]a[2]a[3]){coutNot triangle;}else{// 使用勾股定理判断三角形类型intsq1a[1]*a[1];intsq2a[2]*a[2];intsq3a[3]*a[3];// 直角三角形两短边平方和等于最长边平方if(sq1sq2sq3)coutRight triangleendl;// 锐角三角形两短边平方和大于最长边平方if(sq1sq2sq3)coutAcute triangleendl;// 钝角三角形两短边平方和小于最长边平方if(sq1sq2sq3)coutObtuse triangleendl;// 等腰三角形至少两条边相等if(a[1]a[2]||a[2]a[3])coutIsosceles triangleendl;// 等边三角形三条边都相等if(a[1]a[2]a[2]a[3])coutEquilateral triangleendl;}return0;}功能分析算法逻辑输入处理读入三个整数作为三角形的三条边排序处理将三条边按升序排列方便后续判断三角形存在性判断根据三角形的基本性质任意两边之和大于第三边由于已排序只需检查最小两边之和是否大于最大边三角形类型判断按题目要求顺序直角三角形满足勾股定理a² b² c²锐角三角形a² b² c²钝角三角形a² b² c²等腰三角形至少有两条边相等等边三角形三条边都相等算法特点通过排序简化判断逻辑条件判断顺序符合题目输出要求支持多重分类如既是等腰又是直角等注意事项等边三角形会同时触发等腰和等边的输出等腰直角三角形会同时触发直角和等腰的输出所有输出都遵循题目的优先级顺序完整信奥赛C普及组CSP-J一等奖通关刷题题单及题解请关注专栏https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转【秘籍汇总】完整csp信奥赛C学习资料1、csp/信奥赛C完整信奥赛系列课程永久学习https://edu.csdn.net/lecturer/7901 点击跳转2、CSP信奥赛C竞赛拿奖视频课https://edu.csdn.net/course/detail/40437 点击跳转https://edu.csdn.net/course/detail/41081 点击跳转3、csp信奥赛高频考点知识详解及案例实践CSP信奥赛C动态规划https://blog.csdn.net/weixin_66461496/category_13096895.html点击跳转CSP信奥赛C标准模板库STLhttps://blog.csdn.net/weixin_66461496/category_13108077.html 点击跳转信奥赛C提高组csp-s知识详解及案例实践https://blog.csdn.net/weixin_66461496/category_13113932.html 点击跳转4、csp信奥赛冲刺一等奖有效刷题题解信奥赛C普及组CSP-J一等奖通关刷题题单及题解https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转信奥赛C普及组csp-j初赛复赛真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转信奥赛C提高组csp-s初赛复赛真题题解持续更新https://blog.csdn.net/weixin_66461496/category_13125089.html 点击跳转5、GESP C考级真题题解GESP(C 一级二级三级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转GESP(C 四级五级六级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转GESP(C 七级八级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_13117178.html 点击跳转· 文末祝福 ·#includebits/stdc.husingnamespacestd;intmain(){cout跟着王老师一起学习信奥赛C;cout 成就更好的自己 ;cout csp信奥赛一等奖属于你! ;return0;}