#include
int main()
{
int t;
int count=1;
scanf("%d",&t);
while(t--)
{
int a,b,c;
scanf("%d%d",&a,&b);
c=a+b;
printf("Case %d: %d\n",count,c);
count++;
}
return 0;
}
记住多样例输入的模板,熟悉计数器的使用(count)
#include
int main()
{
int a,b,count=1;
while(~scanf("%d%d",&a,&b))
{
if(a==0&&b==0) break;
int c=a+b;
printf("Case %d: %d\n",count,c);
count++;
}
return 0;
}
多样例输入,使用~,然后加一个条件判断跳出循环
if(a==0&&b==0) break;
#include
int main()
{
int a,b,count=1;
while(~scanf("%d%d",&a,&b))
{
int c=a+b;
printf("Case %d: %d\n",count,c);
count++;
}
return 0;
}
去掉前一题的条件判断即可
#include
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
double x1,y1,x2,y2,x3,y3;
scanf("%lf%lf%lf%lf%lf%lf",&x1,&y1,&x2,&y2,&x3,&y3);
if((y3-y1)*(x2-x1)==(y2-y1)*(x3-x1)) printf("Yes\n");
else printf("No\n");
}
return 0;
}
斜率相等,表示三点共线,把斜率用点的坐标表示出来,交叉相乘作为条件判断的依据(就算使用双精度变量,除法还是会有精度损失,就会Wrong Answer)
#include
#include
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
int x1,y1,x2,y2;
bool flag=false;
scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
if(x2>=x1&&x2<=y1) flag=true;
else if(x1>=x2&&x1<=y2) flag=true;
else if(x2>y1) flag=false;
else if(x1>y2) flag=false;
else if(x1>=x2&&y1<=y2) flag=true;
else flag=true;
if(flag) printf("Yes\n");
else printf("No\n");
}
return 0;
}
分类讨论区间可能的六种情况,就是部分相交(2种),包含(2种),相离(2种)