</pre>1079 三角形</h1></center><p align="center" style="margin-top:0px; margin-bottom:15px; padding-top:0px; padding-bottom:0px; line-height:24px; color:rgb(42,42,42); font-family:Verdana,Tahoma,Arial,sans-serif; font-size:14px; background-color:rgb(250,252,255)">时间限制:500MS  内存限制:65536K提交次数:283 通过次数:82</p><p align="center" style="margin-top:0px; margin-bottom:15px; padding-top:0px; padding-bottom:0px; line-height:24px; color:rgb(42,42,42); font-family:Verdana,Tahoma,Arial,sans-serif; font-size:14px; background-color:rgb(250,252,255)">题型: 编程题   语言: G++;GCC</p><p align="left" style="margin-top:0px; margin-bottom:15px; padding-top:0px; padding-bottom:0px; line-height:24px; color:rgb(42,42,42); font-family:Verdana,Tahoma,Arial,sans-serif; font-size:14px; background-color:rgb(250,252,255)"></p><h1 style="margin:0px 0px 15px; padding:0px; display:inline; background-color:rgb(250,252,255); color:rgb(96,96,96); font-size:18px; letter-spacing:-1px; font-family:Verdana,Tahoma,Arial,sans-serif">Description</h1><span style="color:rgb(42,42,42); font-family:Verdana,Tahoma,Arial,sans-serif; font-size:14px; background-color:rgb(250,252,255)"></span><pre style="color:rgb(42,42,42); font-size:14px; background-color:rgb(250,252,255)">著名的数学家毕达哥拉斯可能从来都不曾想过有人居然会问他这样的一个问题:给出一个整数,存在多少个直角三角形,
它的某一条边的长度等于这个整数,而且其他边的长度也是整数。既然毕达哥拉斯不可能预见到有计算机的出现,
如果他回答不出来,那谁又能责怪他呢?但是现在既然你有了计算机,那么回答不出来就说不过去了。

输入格式

第一行有一个整数n,代表有多少个数据(1<=n<=20)。接下来有n行,每行代表一个数据。一个数据就是一个整数ai(a<=i<=n,1<=ai<=100)。

输出格式

每个数据都必须有相应的输出。两个数据的输出之间有一个空行。最后一个测试数据的输出后不要加空行。
对于每一个数据,如果找不到解,则输出一个空行。如果找到解,就把符合条件的所有直角三角形输出。每个三角形占一行,输出该三角形的另外两条
边,必须先输出长边,然后一个逗号,再输出短边。两个三角形之间不能有空行,而且必须按照长边降序排列。

输入样例

2
20
12

输出样例

101,99
52,48
29,21
25,15
16,1237,35
20,16
15,9

13,5

****************************************************************************************************************

本题要用到模拟,而且还要考虑输入a边长时,a可能为直角边或者是斜边。

还有一个重要的是,当a为直角边的时候,斜边最长为多少?

还有就是输出格式从大到小的数排列。还有就是当a是斜边的时候怎么解决输出重复的问提。

****************************************************************************************************************

方案1(作者最开始的源码)

#include <stdio.h>
int s[50];
int main()
{int n, i, a, x, y,flag;scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&s[i]);for(i=0;i<n;i++){a=s[i];flag=0;//a作为直角边for(y=2501;y>0;y--)//输入为100时最大的斜边是2501{for(x=y-1;x>0;x--){if(a*a+x*x==y*y){printf("%d,%d\n",y,x);flag=1;}}}//a为斜边int judge=0;for(y=1;y<a;y++){for(x=a-y+1;x<a+y&&x>judge;x++)//可以直接x>y,一开始没想到{if(x*x+y*y==a*a){judge=y;printf("%d,%d\n",x,y);flag=1;}}}if(flag==0)  printf("\n");if(i!=n-1)  printf("\n");}return 0;
}
********************************************************************************************************

方案2(优化过)

#include <stdio.h>
#include<math.h>
void work()
{int a,i,j;scanf("%d",&a);for(i=2501;i>a;i--)//a为直角边时{j=(int)sqrt(i*i-a*a);if(a*a+j*j==i*i&&i>j)printf("%d %d\n",i,j);}for(i=a-1;i>0;i--){j=(int)sqrt(i*i-a*a);if(a*a+j*j==i*i&&i>j)printf("%d %d\n",i,j);}}if(flag==0)printf("\n");
}
int main()
{int n;scanf("%d",&n);while(n--){work();if(n)printf("\n");}return 0;
}
第二种方法dalao教的,感觉简单一些。

转载于:https://www.cnblogs.com/denghaiquan/p/6666089.html

scau 1079 三角形(暴力)相关推荐

  1. SCAU 1079 三角形

    Description 著名的数学家毕达哥拉斯可能从来都不曾想过有人居然会问他这样的一个问题:给出一个整数,存在多少个直角三角形, 它的某一条边的长度等于这个整数,而且其他边的长度也是整数.既然毕达哥 ...

  2. SCAU 计算智能 1079 三角形

    Description 著名的数学家毕达哥拉斯可能从来都不曾想过有人居然会问他这样的一个问题: 给出一个整数,存在多少个直角三角形,它的某一条边的长度等于这个整数,而且其他边的长度也是整数. 既然毕达 ...

  3. SCAU 计算智能 暴力美学(二)

    题二:1079 三角形 Description 著名的数学家毕达哥拉斯可能从来都不曾想过有人居然会问他这样的一个问题:给出一个整数,存在多少个直角三角形, 它的某一条边的长度等于这个整数,而且其他边的 ...

  4. 2022年SCAU计算智能题库

    目录 头文件及宏定义 基础 18104 练习使用多case解题 注意事项: 代码实现: 递归和分治 (Recursion and Divide and Conquer) 1142 巡逻的士兵 注意事项 ...

  5. SCAU《程序设计与算法基础》(原名计算智能)题库整理

    目录 前言 18104 练习使用多case解题 18276 走迷宫 18440 走迷宫2 19116 丑数 18005 它不是丑数 19121 小明手上的牌 18105 银行的叫号顺序 18118 勇 ...

  6. 520 钻石争霸赛 题解

    说好的钻石难度,结果本人菜的一地..只有88分.... 文章目录 7-1 考试周 7-2 真的恭喜你 7-3 平均成绩 7-4 古风A+B 难度开始上升 7-5 猜近似数字 7-6 随机输一次 7-7 ...

  7. 2017 ACM-ICPC乌鲁木齐网络赛 B. Out-out-control cars(几何)

    题目链接:https://www.jisuanke.com/contest/870 题意: 直角坐标系上有两个三角形,它们都超某个方向匀速移动,问它们会不会在某个时候相碰 输入两行.每一行前6个数为三 ...

  8. 2021计算智能期末复习

    题1:18005 It is not ugly number 题目描述 18005 It is not ugly number 时间限制:2000MS 代码长度限制:10KB 提交次数:0 通过次数: ...

  9. scau 17967 大师姐唱K的固有结界 分类暴力 + RMQ

    由于能放两次,那么分类, 1.连续使用,(这个直接O(n^2)暴力) 2.分开使用. 分开使用的话,首先暴力枚举,用T时间,能从第1个位置,唱到第几首歌,然后剩下的就是从pos + 1, n这个位置, ...

最新文章

  1. 2022-2028年中国消防车行业市场前瞻与投资战略规划分析报告
  2. php sf框架,GitHub - YanCastle/sf: php swoole framework
  3. 一起学nRF51xx 0 - 环境搭建
  4. 【已解决】Exception in thread “Thread-0“ redis.clients.jedis.exceptions.JedisConnectionException: java.n
  5. 【UOJ574】多线程计算【二元二项式反演】【定积分】【矩阵】【NTT 卷积】
  6. Ideal 使用帮助手册
  7. skypebridge.exe 损坏的映像 错误代码 0xc000012f
  8. JDK集合框架结构分析(二)
  9. gif表情包在线生成器怎么一键生成图片
  10. 添加proc文件,控制sctp的debug输出
  11. matlab读取图像的RGB
  12. UCT树用于四子棋对抗实验
  13. 程序运行所花费的时间如何计算
  14. azul zing_Azul Systems CTO讨论Lambda并提高Java社区的投入
  15. c语言中void和define,C语言里面的内联函数(inline)与宏定义(#define)探讨
  16. 基于Python的飞机票销售系统的设计和实现
  17. Saltstack自动化运维详解(数据系统 jinja模板 job管理)
  18. 解决PC端的的TIM群聊界面无法显示公告、文件、记录栏,不显示群消息
  19. 各种说明方法的例句_十种说明方法
  20. 批量下载vk.com上的图片

热门文章

  1. 微软关于XP退役的进一步说明。
  2. Self-Reflection: How to Do It Right
  3. MySQL通讯协议研究2(登录认证)
  4. CSS3 (animation)
  5. 框架学习之Spring 第五节 SSH整合开发[Spring2.5+Hibernate3.3+Struts2]
  6. 使用Nautilus脚本增加新功能
  7. 在Spring.Net中对于NHibernate.Caches.Prevalence的使用
  8. 数据导入报错:Got a packet bigger than‘max_allowed_packet’bytes的问题
  9. RMAN备份与ORA-19625ORA-19502
  10. 防止在iOS设备中的Safari将数字识别为电话号码