ACM2--D3

专题三 – while 循环结构设计 (12/6+6)
基础 1010 1012 1016 1209 1235 2543 //6
拓展 1442 2252 2555 2562 2742 2743 //6
[1012]???
wrong

#include<stdio.h>
int main()
{
 int a,b;
 while(scanf("%d %d",&a,&b)!=EOF&&(a!=0&&b!=0))
 printf("%d\n",a+b);
 return 0;
}

correct

#include<stdio.h>
int main()
{
    int a,b;
    while(scanf("%d %d",&a,&b)!=EOF)
    {
        if(a==0&&b==0)break;
        printf("%d\n",a+b);
    }
}

【2543】

#include<stdio.h>
int main()
{
 int i,n,b;
 while(scanf("%d",&n)!=EOF)
 {
  printf("%d\n",n/5+n/6+n/8-n/30-n/24-n/40+n/120);
  /*这个问题用容斥原理来做
1000中被5整除的有200个
被6整除的有166
被8整除的有125个
既被5整除又被6整除  
既被5整除又被8整除  
既被6整除又被8整除  (不是6*8=48
被5,6,8整除*/
     }
     
}

容斥原理:先不考虑重叠的情况,把包含于某内容中的所有对象的数目先计算出来,然后再把计数时重复计算的数目排斥出去,使得计算的结果既无遗漏又无重复,这种计数的方法称为容斥原理。
如果被计数的事物有A、B、C三类,那么,A类和B类和C类元素个数总和= A类元素个数+ B类元素个数+C类元素个数—既是A类又是B类的元素个数—既是A类又是C类的元素个数—既是B类又是C类的元素个数+既是A类又是B类而且是C类的元素个数。
【1442】

#include<stdio.h>
int main()
{
 int n,a,b,c,d,i;
 scanf("%d",&n);
 for(i=1;i<=n;i++)
 {
 scanf("%d %d %d",&a,&b,&c);
 d=(a+b+c)/3;
 if((a>d&&b>d)||(b>d&&c>d)||(a>d&&c>d))
 printf("Yes\n");
 else printf("No\n");
}
return 0;
}

【2562】

#include <stdio.h>
int main(){int a1,b1,c1,a2,b2,c2,t; while((scanf("%d%d%d%d%d%d",&a1,&b1,&c1,&a2,&b2,&c2))==6) 
{
   if(a1>b1){t=a1;a1=b1;b1=t;}  
   if(a1>c1){t=a1;a1=c1;c1=t;}  
   if(b1>c1){t=b1;b1=c1;c1=t;}  
   if(a2>b2){t=a2;a2=b2;b2=t;}  
   if(a2>c2){t=a2;a2=c2;c2=t;}  
   if(b2>c2){t=b2;b2=c2;c2=t;} 
    printf((c1>=a1+b1||a1*b2-a2*b1||b1*c2-b2*c1)?"NO\n":"YES\n"); 
    } 
    return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值