nyoj-659-推断三角形(大坑)
推断三角形
- 描写叙述
-
小明非常喜欢研究三角形。如今,小明已经知道三角形的三条边。假设三条边能组成三角形,小明就会非常高兴,他就会得到一个“YE”,假设他经过进一步的研究知道它又是等腰三角形,
他又会得一个“YE”,他再次研究出它又是一个等边三角形,当然,他又会得到一个“YE”。
小明当然不想自己推断了。那请你帮他写一个程序计算出给你三条边小明会得到几个“YE”?
提示1:最后普通三角形得到一个,等腰得到两个。等边得到三个
提示2:请严格按以下输出格式输出
- 输入
- 首先,输入一个T,代表有几组測试数据。
接下来有T行,每行有三个数,代表三条边。
- 输出
- 对于每组測试数据首先输出”Case #H:”H代表第几组測试数据,接下来输出小明得到的“YE”
数目,假设小明得不到“YE”。请输出“NO”。
- 例子输入
-
23 3 25 2 1
- 例子输出
-
Case #1:YE YECase #2:NO
解题思路:
这是一道非常水非常水的题,可是我却做了半天,是我思路出问题了。
一開始我让sum=0,三个条件并列,每符合一个条件则sum++,然后相应几就输出几个YE。
可是当输入2 2 5时,本来不能构成三角形。可是我的输出却为YE
这是为什么呢?
由于三个条件不是并列的。是包括关系,即第二个条件的前提是第一个条件。第三个条件的前提是前两个条件。
看好多人都说明明測试数据正确。可是却WA了。这个时候一定要静下心来,假设不是在比赛过程中。你能够先放下,忙会儿其它的,分散一下注意力之后再回来做。
代码
#include<stdio.h>
#include<algorithm>
using namespace std;
int bian[5];
int main()
{
int n;
int i;
int now=1;
int sum;
scanf("%d",&n);
while(n--)
{
for(i=1;i<=3;i++)
scanf("%d",&bian[i]);
sort(bian+1,bian+4);
sum=0;
/*最初做法(三条件并列)
if(bian[1]+bian[2]>bian[3])
sum++;
if(bian[1]==bian[2]||bian[2]==bian[3])
sum++;
if(bian[1]==bian[2]&&bian[1]==bian[3])
sum++;
*/
if(bian[1]+bian[2]>bian[3])
{
sum++;
if(bian[1]==bian[2]||bian[2]==bian[3])
{
sum++;
if(bian[1]==bian[2]&&bian[1]==bian[3])
sum++;
}
}
printf("Case #%d:\n",now);
switch(sum)
{
case 0:printf("NO\n");break;
case 1:printf("YE\n");break;
case 2:printf("YE YE\n");break;
case 3:printf("YE YE YE\n");break;
}
now++;
}
return 0;
}
nyoj-659-推断三角形(大坑)的更多相关文章
- NYOJ 491 幸运三角形
幸运三角形 import java.util.Scanner; public class Main{//搜索 static int sum=0,n; public static void main(S ...
- 2015年天勤考研机试模拟赛 A 推断三角形
[思路]:採用atoi转换长度.两边仅仅和大于第三边,两边之差小于第三边. [AC代码]: #include <iostream> #include <algorithm> # ...
- NYOJ 815 三角形【海伦公式】
/* 关键点:海伦公式 解题人:lingnichong 解题时间:2014-10-04 21:48:47 解题体会:海伦公式的使用 */ 三角形 时间限制:1000 ms | 内存限制:65535 ...
- nyoj 67 三角形面积【三角形面积公式】
三角形面积 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 给你三个点,表示一个三角形的三个顶点,现你的任务是求出该三角形的面积 输入 每行是一组测试数据,有6个 ...
- NYOJ 67 三角形面积(线代,数学)
三角形面积 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 给你三个点,表示一个三角形的三个顶点,现你的任务是求出该三角形的面积 输入 每行是一组测试数据,有6个 ...
- nyoj 幸运三角形
幸运三角形 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 话说有这么一个图形,只有两种符号组成(‘+’或者‘-’),图形的最上层有n个符号,往下个数依次减一,形成倒 ...
- nyoj 274-正三角形的外接圆面积 (R = PI * a * a / 3)
274-正三角形的外接圆面积 内存限制:64MB 时间限制:1000ms 特判: No 通过数:14 提交数:22 难度:0 题目描述: 给你正三角形的边长,pi=3.1415926 ,求正三角形的外 ...
- Intel大坑之中的一个:丢失的SSE2 128bit/64bit 位移指令,马航MH370??
缘由 近期在写一些字符串函数的优化,兴趣使然.但是写的过程中,想要实现 SSE2 128 bit / 64 bit 的按 bit 逻辑位移.遇到了一个大坑,且听我娓娓道来. 我并不想用什么马航370来 ...
- 3D空间中射线与三角形的交叉检測算法
引言 射线Ray,在3D图形学中有非常多重要的应用.比方,pick操作就是使用射线Ray来实现的,还有诸如子弹射线的碰撞检測等等都能够使用射线Ray来完毕. 所以,在本次博客中,将会简单的像大家介绍下 ...
随机推荐
- [JOISC2014]歴史の研究/[BZOJ4241]历史研究
[JOISC2014]歴史の研究/[BZOJ4241]历史研究 题目大意: 一个长度为\(n(n\le10^5)\)的数列\(A(A_i\le10^9)\),定义一个元素对一个区间\([l,r]\)的 ...
- 【BZOJ】4985: 评分【DP】
4985: 评分 Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 148 Solved: 75[Submit][Status][Discuss] Des ...
- Windows下C语言调用dll动态链接库
dll是windows下的动态链接库文件,下面记录一下在windows下如何调用C语言开发的dll动态链接库. 1.dll动态链接库的源代码 hello_dll.c #include "st ...
- Python环境右键定制
有时候,我们需要将py打包成exe.需要将ui转换成py.需要将py转换成pyc等等,命令行操作起来有点繁琐.所以做了这个教程: 1. py打包成exe 先安装cx_freeze,参照教程:http: ...
- C# .NET 获取网络适配器信息和路径信息
C# .NET 获取网络适配器信息 1:NetworkInterface 类: 该类位于 System.Net.NetworkInformation 命名空间 该类可以方便的检测本机有多少个网卡(网络 ...
- Codeforces Round #297 (Div. 2)D. Arthur and Walls 暴力搜索
Codeforces Round #297 (Div. 2)D. Arthur and Walls Time Limit: 2 Sec Memory Limit: 512 MBSubmit: xxx ...
- Idea详细配置
https://blog.csdn.net/m_m254282520/article/details/78900238
- lol匹配算法
这是Riot的Design Director Tom Cadwell专门为中国玩家写的解说匹配系统工作原理的帖子. 同一时候为了让大家更好的理解匹配系统,假设您认为您遇到了特别不公平的匹配,请回复游戏 ...
- go test
testing 是go中自动测试的包, 直接import就可以使用, 使用时需要注意以下规范 执行测试函数的文件必须以 _test.go 结尾, 注意下划线 单元测试函数名必须以 Test 开头, 并 ...
- iOS-实现最简单的画线功能 . 转
前提:CoreGraphics.framework - (void)viewDidLoad { [super viewDidLoad]; UIImageView *imageView=[[UIImag ...