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来完毕. 所以,在本次博客中,将会简单的像大家介绍下 ...
随机推荐
- CF597C Subsequences 树状数组 + 动态规划
设$f(i, j)$表示以$i$结尾的,长为$j$的上升子序列的数量 转移时用树状数组维护即可 复杂度为$O(kn \log n)$ 注:特判0 #include <cstdio> #in ...
- SQL SERVER 2008 多边形问题的解决
报错内容: 在执行用户定义例程或聚合 "geometry" 期间出现 .NET Framework 错误: System.ArgumentException: 24144: 由于该 ...
- python知识(3)----正则表达式
python的正则表达式使用起来非常的方便,基本思路就是编译规则,匹配字符串,输出字符串 参考资料 Python中的正则表达式教程
- vue2.0使用记录
父组件给子组件传值[props] 1.首先在父组件的script标签中引入子组件 import Children from './Children' 2.在template内引入子组件 <Chi ...
- [分享]2013:Linux的黄金之年-十大杰出成就
2013年已经过去.这一年见证了许多里程碑事件,使得2013年可以称得上是一个Linux的黄金之年.其中一些成果在FOSS和Linux世界更可以称得上是举世瞩目的成就. 1.Android的上升趋势 ...
- Node.js学习笔记(2) - Node.js安装及入门hello world
今天来简单的记录一下Node.js的安装配置以及简单的入门 一.Node.js的安装 1.windows下的安装 windows下的安装很简单,只需要去官网http://nodejs.org中,找到w ...
- MySQL命令行工具各功能说明(转)
MySQL 服务器端使用工具程序 mysqld - SQL 后台程序(即 MySQL 服务器进程).该程序必须启动运行,才能连接服务器来访问数据库. mysqld_safe - 服务器启动脚本,可以通 ...
- How To Allow Blocked Content on Internet Explorer
Follow the steps below if you are tired of having to "Enable Blocked Content" in IE each t ...
- Openfiler能把标准x86/64架构的系统变成一个强大的NAS、SAN存储和IP存储网关
http://www.linuxprob.com/vmware-openfiler.html
- mysql 5.6 与5.7安装
http://blog.itpub.net/29733787/viewspace-1590891/ http://www.oschina.net/code/snippet_7933_45700