HDOJ 2000-2010

Output Limit Exceeded
可能是while死循环出不来。修改:while(~scanf(
可能是输入数据的类型错误。
以下题目提交用G++

2000 ASCII码排序

#include<bits/stdc++.h>
int main(){
	char ch[3];
	while(~scanf("%c%c%c",&ch[0],&ch[1],&ch[2])){
		for(int i=0;i<3-1;i++){	//冒泡
			for(int j=0;j<3-i-1;j++){
				if(ch[j]>ch[j+1]){
					ch[j] = ch[j]+ch[j+1];
					ch[j+1] = ch[j]-ch[j+1];
					ch[j] = ch[j]-ch[j+1];
				}
			}
		}
		printf("%c %c %c\n",ch[0],ch[1],ch[2]);
		getchar();
	}
	return 0;
}

2001 计算两点间的距离

#include<bits/stdc++.h>
int main(){
	double a,b,c,d;
	while(~scanf("%lf %lf %lf %lf",&a,&b,&c,&d)){
		double distence = pow(pow(c-a,2)+pow(b-d,2),0.5);
		printf("%.2f\n",distence);
	}
	return 0;
}

2002 计算球体积

半径如果用float会WA

#include<bits/stdc++.h>
const double PI=3.1415927;
int main(){
	double r;
	while(~scanf("%lf",&r)){
		double v = 4*PI*r*r*r/3;
		printf("%.3f\n",v);
	}
	return 0;
}

2003 求绝对值

#include<bits/stdc++.h>
int main(){
	double num;
	while(~scanf("%lf",&num)){
		num>0?printf("%.2f\n",num):printf("%.2f\n",-num);
	}
	return 0;
}

2004 成绩转换

#include<bits/stdc++.h>
int main(){
	double score;
	while(~scanf("%lf",&score)){
		switch(int(score/10)){
			case 10: printf("A\n");break;
			case 9:printf("A\n");break;
			case 8:printf("B\n");break;
			case 7:printf("C\n");break;
			case 6:printf("D\n");break;
			case 5:printf("E\n");break;
			case 4:printf("E\n");break;
			case 3:printf("E\n");break;
			case 2:printf("E\n");break;
			case 1:printf("E\n");break;
			default:printf("Score is error!\n");
		}
	}
	return 0;
}

2005 第几天?

#include<bits/stdc++.h>
int main(){
	int year,month,day;
	int leap[12] = {31,29,31,30,31,30,31,31,30,31,30,31};
	int common[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
	while(~scanf("%d/%d/%d",&year,&month,&day)){
		int days = 0;
		if( (year%4==0 && year%100!=0) || year%400==0 )
			for(int i=0;i<month-1;i++) days += leap[i];
		else for(int i=0;i<month-1;i++) days += common[i];
		days += day;
		printf("%d\n",days);
	}
	return 0;
}

2006 求奇数的乘积

#include<bits/stdc++.h>
int main(){
	int n;
	while(~scanf("%d",&n)){
		int product=1;
		int num;
		for(int i=0;i<n;i++){
			scanf("%d",&num);
			if(num%2==1) product *= num;
		}
		printf("%d\n",product);
	}
	return 0;
} 

2007 平方和与立方和

#include<bits/stdc++.h>
int main(){
	int m,n;
	while(~scanf("%d %d",&m,&n)){
		if(m>n){
			m = m+n;
			n = m-n;
			m = m-n;
		}
		int even=0,odd=0;
		for(int i=m;i<=n;i++){
			if(i%2==0) even += pow(i,2);
			else odd += pow(i,3);
		}
		printf("%d %d\n",even,odd);
	}
	return 0;
}

2008 数值统计

#include<bits/stdc++.h>
int main(){
	int n;
	while(~scanf("%d",&n)){
		if(n==0) break;
		int negative=0,zero=0,positive=0;
		double num;
		for(int i=0;i<n;i++){
			scanf("%lf",&num);
			if(num<0) negative += 1;
			else if(num==0) zero += 1;
			else positive += 1;
		}
		printf("%d %d %d\n",negative,zero,positive);
	}
	return 0;
}

2009 求数列的和

#include<bits/stdc++.h>
int main(){
	int n,m;
	while(~scanf("%d %d",&n,&m)){
		double mix=n,num=n;
		for(int i=1;i<m;i++){
			num = pow(num,0.5);
			mix += num;
		}
		printf("%.2f\n",mix);
	}
	return 0;
}

2010 水仙花数

#include<bits/stdc++.h>
int main(){
	int m,n;
	while(~scanf("%d %d",&m,&n)){
		int num=0;
		for(int i=m;i<=n;i++){
			int bai = i/100;
			int ge  = i%10;
			int shi = i%100/10;
			if(i==pow(bai,3)+pow(ge,3)+pow(shi,3)){
				if(num>=1) printf(" ");
				printf("%d",i);
				num += 1;
			}	
		}
		if(num==0) printf("no\n");
		else printf("\n");
	}
	return 0;
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

正在学C++

2角不嫌多,1角不嫌少

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值