ZJYC 20屆第一次周測
HDU 1000 a+b problem
考察多組輸入的使用,
#include<stdio.h>
int main(){
int a,b;
while(~scanf("%d%d",&a,&b)){
printf("%d\n",a+b);
}
return 0;
}
HDU 2033 人見人愛A+B
給n組資料,一組兩個時分秒相加,求相加結果,注意分和秒遇60要取余,小時沒有限制,
#include<stdio.h>
int main(){
int T;
scanf("%d",&T);
int AH,AM,AS,BH,BM,BS;
while(T--){
scanf("%d%d%d%d%d%d",&AH,&AM,&AS,&BH,&BM,&BS);
int a,b,c;//存答案 時分秒
c=(AS+BS)%60; //多少秒
b=(AM+BM)%60+(AS+BS)/60; //多少分鐘
a=AH+BH+(AM+BM)/60; //多少小時
printf("%d %d %d\n",a,b,c);
}
return 0;
}
HDU 2005 第幾天?
給出年月日,輸出此日為這年的第幾天,考察閏年和大小月判斷,
#include<stdio.h>
int main()
{
int i, sum, month[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
int moon, year, day;
while(~scanf("%d/%d/%d", &year, &moon, &day))
{
month[1]=28;
sum = 0;
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
month[1] = 29;
for (i = 0; i < moon - 1; i++)
{
sum = sum + month[i]; //相加;
}
sum = sum + day;
printf("%d\n", sum);
}
return 0;
}
HDU 2021 發工資嘍
簡單貪心,
求至少需要多少人民幣張數,
那么就是從面值最大的開始給,再給小的面值,逐一遞減,
#include<stdio.h>
int main()
{
int n,sum,m,money[6]={100,50,10,5,2,1};
while(scanf("%d",&n),n){
sum=0;
while(n--){
scanf("%d",&m);
for(int i=0;i<6;i++){
sum+=m/money[i];
m%=money[i];
}
}
printf("%d\n",sum);
}
return 0;
}
HDU 2040 親和數
考查了一個數中所有約數相加是否等于另一個數,
關鍵為寫出求約數的程序
代碼如下
#include<stdio.h>
#include<math.h>
int sum(int x){
int res = 0;
int h = sqrt(x)+0.5;
for(int i = 1;i < h;i++){
if(x % i==0)res=res + i + x/i;
}
return res-x;//自身不算,所以減x,
}
int main(){
int T;
scanf("%d",&T);
while(T--){
int a,b;
scanf("%d%d",&a,&b);
if(a==sum(b)&&b==sum(a))printf("YES\n");
else printf("NO\n");
}
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/233530.html
標籤:其他
上一篇:面試官本拿求素數搞我,但被我優雅的“回擊“了(素數篩)
下一篇:靜態路由綜合配置實驗(二)
