再大的洪水也阻挡不了我们刷题的热情···(Orz)
2017-07-05 17:14
253 查看
Solved 16 / 20 A POJ 1005 I Think I Need a Houseboat
Solved 25 / 26 B HDU 2021 发工资咯:)
Solved 22 / 36 C HDU 2022 海选女主角
Solved 18 / 67 D HDU 2023 求平均成绩
Solved 16 / 36 E HDU 2024 C语言合法标识符
Solved 17 / 18 F HDU 2025 查找最大元素
Solved 17 / 19 G HDU 2026 首字母变大写
Solved 16 / 31 H HDU 2027 统计元音
Solved 13 / 35 I HDU 2028 Lowest Common Multiple Plus
Solved 16 / 26 J HDU 2029 Palindromes _easy version
Solved 14 / 16 K HDU 2030 汉字统计
Solved 12 / 22 L HDU 2031 进制转换
Solved 13 / 27 M HDU 2032 杨辉三角
Solved 16 / 16 N HDU 2033 人见人爱A+B
Solved 10 / 29 O HDU 2034 人见人爱A-B
Solved 14 / 15 P HDU 2035 人见人爱A^B
Solved 9 / 16 Q HDU 2036 改革春风吹满地
Solved 11 / 12 R HDU 2037 今年暑假不AC
Solved 12 / 23 S HDU 2046 骨牌铺方格
Solved 14 / 29 T HDU 2039 三角形
Solved 12 / 13 U HDU 2040 亲和数
Solved 15 / 16 V HDU 2041 超级楼梯
Solved 13 / 13 W HDU 2042 不容易系列之二
Solved 13 / 21 X HDU 2043 密码
Solved 13 / 25 Y HDU 2044 一只小蜜蜂…
1:
描述:Fred Mapper正考虑在路易斯安那州买一些土地来建房子。在调查土地的过程中,他发现
由于密西西比河的腐蚀,路易斯安那州的面积正以每年50平方米的速度减少 。因为Fred想在这个房子度过他的余生,所以他需要知道他的土地是否将被腐蚀。
经过更多的调查,Fred已经知道了土地将以半圆的形式腐蚀,半圆的中心在坐标(0,0)以x轴为分隔线,
x轴以下的区域在水中 ,在第一年开始时没有被腐蚀的土地。(半圆在下图中给出)
输入:在输入的第一行将有一个正整数(N),表示将有N个数据。在接下去的N行将包含Fred所考虑的土地的X和Y坐标。
所给浮点数以米为单位。Y坐标为非负的,坐标(0,0)不会被给出。
输出:对于每个数据将对应有一行输出,格式为 “Property N: This property will begin eroding in year Z.”这里的N为数据序号(从1开始),Z是将被腐蚀的那一年,且Z是个整数,在输出最后一行要输出 “END OF OUTPUT.”
输入样例:
2
1.0 1.0
25.0 0.0
输出样例:
Property 1: This property will begin eroding in year 1.
Property 2: This property will begin eroding in year 20.
END OF OUTPUT.
2:(DP凑硬币问题)
作为杭电的老师,最盼望的日子就是每月的8号了,因为这一天是发工资的日子,养家糊口就靠它了,呵呵
但是对于学校财务处的工作人员来说,这一天则是很忙碌的一天,财务处的小胡老师最近就在考虑一个问题:如果每个老师的工资额都知道,最少需要准备多少张人民币,才能在给每位老师发工资的时候都不用老师找零呢?
这里假设老师的工资都是正整数,单位元,人民币一共有100元、50元、10元、5元、2元和1元六种。
Input
输入数据包含多个测试实例,每个测试实例的第一行是一个整数n(n<100),表示老师的人数,然后是n个老师的工资。
n=0表示输入的结束,不做处理。
Output
对于每个测试实例输出一个整数x,表示至少需要准备的人民币张数。每个输出占一行。
Sample Input
3
1 2 3
0
Sample Output
4
3:(二维数组+注意绝对值)
面试那天,刚好来了m*n个MM,站成一个m*n的队列,副导演Fe(OH)2为每个MM打了分数,分数都是32位有符号整数。
一开始我很纳闷:分数怎么还有负的?Fe(OH)2解释说,根据选拔规则,头发染成黄色、化妆太浓、穿的太少等等都要扣分数的,扣的多了就可能是负分了,当然,如果发现话语中夹有日语,就直接给-2147483648分了。
分数送上来了,是我做决定的时候了,我的一个选拔原则是,要选一个面试分数绝对值(必须还是32位整数)最大的MM。
特别说明:如果不幸选中一个负分的MM,也没关系,因为我觉得,如果不能吸引你,那要想法恶心你。
Input
输入数据有多组,每组的第一行是两个整数m和n,表示应聘MM的总共的行列数,然后是m行整数,每行有n个,m和n的定义见题目的描述。
Output
对于每组输入数据,输出三个整数x,y和s,分别表示选中的MM的行号、列号和分数。
note:行号和列号从一开始,如果有多个MM的分数绝对值一样,那么输出排在最前面的一个(即行号最小的那个,如果行号相同则取列号最小的那个)。
Sample Input
2 3
1 4 -3
-7 3 0
Sample Output
2 1 -7
4(注意输出格式):
假设一个班有n(n<=50)个学生,每人考m(m<=5)门课,求每个学生的平均成绩和每门课的平均成绩,并输出各科成绩均大于等于平均成绩的学生数量。
Input
输入数据有多个测试实例,每个测试实例的第一行包括两个整数n和m,分别表示学生数和课程数。然后是n行数据,每行包括m个整数(即:考试分数)。
Output
对于每个测试实例,输出3行数据,第一行包含n个数据,表示n个学生的平均成绩,结果保留两位小数;第二行包含m个数据,表示m门课的平均成绩,结果保留两位小数;第三行是一个整数,表示该班级中各科成绩均大于等于平均成绩的学生数量。
每个测试实例后面跟一个空行。
Sample Input
2 2
5 10
10 20
Sample Output
7.50 15.00
7.50 15.00
1
5:
输入一个字符串,判断其是否是C的合法标识符。
Input
输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。
Output
对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出”yes”,否则,输出“no”。
Sample Input
3
12ajf
fi8x_a
ff ai_2
Sample Output
no
yes
no
6:
对于输入的每个字符串,查找其中的最大字母,在该字母后面插入字符串“(max)”。
Input
输入数据包括多个测试实例,每个实例由一行长度不超过100的字符串组成,字符串仅由大小写字母构成。
Output
对于每个测试实例输出一行字符串,输出的结果是插入字符串“(max)”后的结果,如果存在多个最大的字母,就在每一个最大字母后面都插入”(max)”。
Sample Input
abcdefgfedcba
xxxxx
Sample Output
abcdefg(max)fedcba
x(max)x(max)x(max)x(max)x(max)
7:
输入一个英文句子,将每个单词的第一个字母改成大写字母。
Input
输入数据包含多个测试实例,每个测试实例是一个长度不超过100的英文句子,占一行。
Output
请输出按照要求改写后的英文句子。
Sample Input
i like acm
i want to get an accepted
Sample Output
I Like Acm
I Want To Get An Accepted
8:(又是统计啥啥的,水)
9:(n个数最小公倍数)
10:(判断回文串)
Solved 25 / 26 B HDU 2021 发工资咯:)
Solved 22 / 36 C HDU 2022 海选女主角
Solved 18 / 67 D HDU 2023 求平均成绩
Solved 16 / 36 E HDU 2024 C语言合法标识符
Solved 17 / 18 F HDU 2025 查找最大元素
Solved 17 / 19 G HDU 2026 首字母变大写
Solved 16 / 31 H HDU 2027 统计元音
Solved 13 / 35 I HDU 2028 Lowest Common Multiple Plus
Solved 16 / 26 J HDU 2029 Palindromes _easy version
Solved 14 / 16 K HDU 2030 汉字统计
Solved 12 / 22 L HDU 2031 进制转换
Solved 13 / 27 M HDU 2032 杨辉三角
Solved 16 / 16 N HDU 2033 人见人爱A+B
Solved 10 / 29 O HDU 2034 人见人爱A-B
Solved 14 / 15 P HDU 2035 人见人爱A^B
Solved 9 / 16 Q HDU 2036 改革春风吹满地
Solved 11 / 12 R HDU 2037 今年暑假不AC
Solved 12 / 23 S HDU 2046 骨牌铺方格
Solved 14 / 29 T HDU 2039 三角形
Solved 12 / 13 U HDU 2040 亲和数
Solved 15 / 16 V HDU 2041 超级楼梯
Solved 13 / 13 W HDU 2042 不容易系列之二
Solved 13 / 21 X HDU 2043 密码
Solved 13 / 25 Y HDU 2044 一只小蜜蜂…
1:
描述:Fred Mapper正考虑在路易斯安那州买一些土地来建房子。在调查土地的过程中,他发现
由于密西西比河的腐蚀,路易斯安那州的面积正以每年50平方米的速度减少 。因为Fred想在这个房子度过他的余生,所以他需要知道他的土地是否将被腐蚀。
经过更多的调查,Fred已经知道了土地将以半圆的形式腐蚀,半圆的中心在坐标(0,0)以x轴为分隔线,
x轴以下的区域在水中 ,在第一年开始时没有被腐蚀的土地。(半圆在下图中给出)
输入:在输入的第一行将有一个正整数(N),表示将有N个数据。在接下去的N行将包含Fred所考虑的土地的X和Y坐标。
所给浮点数以米为单位。Y坐标为非负的,坐标(0,0)不会被给出。
输出:对于每个数据将对应有一行输出,格式为 “Property N: This property will begin eroding in year Z.”这里的N为数据序号(从1开始),Z是将被腐蚀的那一年,且Z是个整数,在输出最后一行要输出 “END OF OUTPUT.”
输入样例:
2
1.0 1.0
25.0 0.0
输出样例:
Property 1: This property will begin eroding in year 1.
Property 2: This property will begin eroding in year 20.
END OF OUTPUT.
#include <stdio.h> #include <math.h> int main () { int n,i,c; float a,b; while (scanf ("%d",&n)!=EOF) { for (i=1;i<=n;i++) { scanf ("%f%f",&a,&b); c=(int)(acos (-1)*(a*a+b*b)/100.0); printf ("Property %d: This property will begin eroding in year %d.\n",i,c+1); } printf ("END OF OUTPUT.\n"); } return 0; }
2:(DP凑硬币问题)
作为杭电的老师,最盼望的日子就是每月的8号了,因为这一天是发工资的日子,养家糊口就靠它了,呵呵
但是对于学校财务处的工作人员来说,这一天则是很忙碌的一天,财务处的小胡老师最近就在考虑一个问题:如果每个老师的工资额都知道,最少需要准备多少张人民币,才能在给每位老师发工资的时候都不用老师找零呢?
这里假设老师的工资都是正整数,单位元,人民币一共有100元、50元、10元、5元、2元和1元六种。
Input
输入数据包含多个测试实例,每个测试实例的第一行是一个整数n(n<100),表示老师的人数,然后是n个老师的工资。
n=0表示输入的结束,不做处理。
Output
对于每个测试实例输出一个整数x,表示至少需要准备的人民币张数。每个输出占一行。
Sample Input
3
1 2 3
0
Sample Output
4
#include<stdio.h> int main() { int n,i,t1,t2,t3,t4,t5,t6,sum; int a[100],s[100]; while(scanf("%d",&n)&&n!=0) { sum=0; for(i=0;i<n;i++) { t1=0,t2=0,t3=0,t4=0,t5=0,t6=0; scanf("%d",&a[i]); t1=a[i]/100; t2=a[i]%100/50; t3=a[i]%50/10; t4=a[i]%10/5; t5=a[i]%5/2; t6=a[i]%5%2;//这里需要先对5取余 s[i]=t1+t2+t3+t4+t5+t6; sum+=s[i]; } printf("%d\n",sum); } }
3:(二维数组+注意绝对值)
面试那天,刚好来了m*n个MM,站成一个m*n的队列,副导演Fe(OH)2为每个MM打了分数,分数都是32位有符号整数。
一开始我很纳闷:分数怎么还有负的?Fe(OH)2解释说,根据选拔规则,头发染成黄色、化妆太浓、穿的太少等等都要扣分数的,扣的多了就可能是负分了,当然,如果发现话语中夹有日语,就直接给-2147483648分了。
分数送上来了,是我做决定的时候了,我的一个选拔原则是,要选一个面试分数绝对值(必须还是32位整数)最大的MM。
特别说明:如果不幸选中一个负分的MM,也没关系,因为我觉得,如果不能吸引你,那要想法恶心你。
Input
输入数据有多组,每组的第一行是两个整数m和n,表示应聘MM的总共的行列数,然后是m行整数,每行有n个,m和n的定义见题目的描述。
Output
对于每组输入数据,输出三个整数x,y和s,分别表示选中的MM的行号、列号和分数。
note:行号和列号从一开始,如果有多个MM的分数绝对值一样,那么输出排在最前面的一个(即行号最小的那个,如果行号相同则取列号最小的那个)。
Sample Input
2 3
1 4 -3
-7 3 0
Sample Output
2 1 -7
#include<stdio.h> #include<math.h> int main() { int a[100][100]; int i,j,n,k,b,f1,f2; while(~scanf("%d%d",&k,&b)) { for(i=1;i<=k;i++) for(j=1;j<=b;j++) { scanf("%d",&a[i][j]); } f1=1;f2=1; for(i=1;i<=k;i++) for(j=1;j<=b;j++) { if(fabs(a[i][j])>fabs(a[f1][f2])) { f1=i; f2=j; } } printf("%d %d %d\n",f1,f2,a[f1][f2]); } return 0; }
4(注意输出格式):
假设一个班有n(n<=50)个学生,每人考m(m<=5)门课,求每个学生的平均成绩和每门课的平均成绩,并输出各科成绩均大于等于平均成绩的学生数量。
Input
输入数据有多个测试实例,每个测试实例的第一行包括两个整数n和m,分别表示学生数和课程数。然后是n行数据,每行包括m个整数(即:考试分数)。
Output
对于每个测试实例,输出3行数据,第一行包含n个数据,表示n个学生的平均成绩,结果保留两位小数;第二行包含m个数据,表示m门课的平均成绩,结果保留两位小数;第三行是一个整数,表示该班级中各科成绩均大于等于平均成绩的学生数量。
每个测试实例后面跟一个空行。
Sample Input
2 2
5 10
10 20
Sample Output
7.50 15.00
7.50 15.00
1
#include<stdio.h> int main() { int n,m,num,i,j,f; double a[55][10],S,C,aS[55],aC[10]; while(scanf("%d%d",&n,&m)!=EOF) { for(i=0;i<n;i++) { for(j=0;j<m;j++) { scanf("%lf",&a[i][j]); } } for(i=0;i<n;i++) { S=0; for(j=0;j<m;j++) { S+=a[i][j]; } aS[i]=S/m; } for(i=0;i<m;i++) { S=0; for(j=0;j<n;j++) { S+=a[j][i]; } aC[i]=S/n; } num=0; for(i=0;i<n;i++) { f=0; for(j=0;j<m;j++) { if(a[i][j]>=aC[j]) { f++; } } if(m==f) { num++; } } for(i=0;i<n;i++) { if(i==n-1) printf("%.2lf\n",aS[i]); else printf("%.2lf ",aS[i]); } for(i=0;i<m;i++) { if(i==m-1) printf("%.2lf\n",aC[i]); else printf("%.2lf ",aC[i]); } printf("%d\n\n",num); } return 0; }
5:
输入一个字符串,判断其是否是C的合法标识符。
Input
输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。
Output
对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出”yes”,否则,输出“no”。
Sample Input
3
12ajf
fi8x_a
ff ai_2
Sample Output
no
yes
no
#include<stdio.h> #include<string.h> int main() { int n,t; char str[55]; while(scanf("%d",&n)!=EOF) { getchar(); while(n--) { gets(str); t=0; for(int i=0;i<strlen(str);i++) { if((str[0]>='a'&&str[0]<='z')||(str[0]>='A'&&str[0]<='Z')||(str[0]=='_')) { if((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z')||(str[i]=='_')||(str[i]>='0'&&str[i]<='9')) t++; } } if(t==strlen(str)) // printf("yes\n"); else printf("no\n"); } } return 0; }
6:
对于输入的每个字符串,查找其中的最大字母,在该字母后面插入字符串“(max)”。
Input
输入数据包括多个测试实例,每个实例由一行长度不超过100的字符串组成,字符串仅由大小写字母构成。
Output
对于每个测试实例输出一行字符串,输出的结果是插入字符串“(max)”后的结果,如果存在多个最大的字母,就在每一个最大字母后面都插入”(max)”。
Sample Input
abcdefgfedcba
xxxxx
Sample Output
abcdefg(max)fedcba
x(max)x(max)x(max)x(max)x(max)
#include <stdio.h> #include <string.h> int main() { char str[105],m; while(scanf("%s",str)!=EOF) { m=str[0]; for(int i=1;i<strlen(str);i++) { if(str[i]>m) m=str[i]; } for(int i=0;str[i];i++) { printf("%c",str[i]); if(str[i]==m) printf("(max)"); } printf("\n"); } return 0; }
7:
输入一个英文句子,将每个单词的第一个字母改成大写字母。
Input
输入数据包含多个测试实例,每个测试实例是一个长度不超过100的英文句子,占一行。
Output
请输出按照要求改写后的英文句子。
Sample Input
i like acm
i want to get an accepted
Sample Output
I Like Acm
I Want To Get An Accepted
#include <stdio.h> #include <string.h> int main() { char s[105]; int flag; while(gets(s)) { flag=0; for(int i=0;i<strlen(s);i++) { if(s[0]>='a'&&s[0]<='z') s[0]=s[0]-32; if(s[i]==' ') s[i+1]=s[i+1]-32; } for(int i=0;i<strlen(s);i++) printf("%c",s[i]); printf("\n"); } return 0; }
8:(又是统计啥啥的,水)
9:(n个数最小公倍数)
#include<stdio.h> long long gcd(long long a,long long b)//相乘用long long,做乘法的时候要考虑爆数据的情况! { return b?gcd(b,a%b):a; } int main() { int n,i; long long a,b; while(scanf("%d",&n)!=EOF) { a=1; for(i=0;i<n;i++) { scanf("%d",&b); a=a*b/gcd(b,a); } printf("%d\n",a); } return 0; }
10:(判断回文串)
#include<stdio.h> #include<string.h> int main() { char s[1000];//数组开大一点 int n; int flag,i,j; while(scanf("%d",&n)!=EOF) { while(n--) { flag=0; scanf("%s",s); int l=strlen(s); for(i = 0;i < l; i++) { if(s[i]==s[l-i-1]) flag=1; else { flag=0; break; } } if(flag) printf("yes\n"); else printf("no\n"); } } return 0; }
///汉字统计 #include<stdio.h> #include<string.h> char s[1005]; int main() { int n,l,i,j,count; while(scanf("%d",&n)!=EOF) { getchar(); while(n--) { gets(s); l=strlen(s); count=0; for(i=0;i<l;i++) { if(s[i]<0) count++; } printf("%d\n",count/2); } } return 0; }
//进制转换 #include <stdio.h> int main() { int n,r,i,x,flag; int a[1005]; while (scanf("%d %d",&n,&r)!=EOF) { flag=0; if (n<0) { n=-n; flag=1; } x=0; while (n) { a[x]=n%r; n/=r; x++; } while (x--) { if (flag) { printf("-"); flag=0; } if (a[x]<10) printf("%d",a[x]); else printf("%c",55+a[x]); } printf("\n"); } return 0; }
相关文章推荐
- 职场笔记[070928]: 这座墙是帮我们阻挡其它人的
- 目标 激起我们热情的东西
- 职场笔记[070928]: 这座墙是帮我们阻挡其它人的
- 职场笔记[070928]: 这座墙是帮我们阻挡其它人的
- 优化LINUX内核阻挡SYN洪水***
- 职场笔记[070928]: 这座墙是帮我们阻挡其它人的
- 优化LINUX内核阻挡SYN洪水***
- 服务台的阿姨热情地接待了我们
- 职场笔记[070928]: 这座墙是帮我们阻挡其它人的
- 任正非新年致辞:没有什么能阻挡我们前进
- 优化LINUX内核阻挡SYN洪水攻击
- 优化LINUX内核阻挡SYN洪水攻击
- 职场笔记[070928]: 这座墙是帮我们阻挡其它人的
- 职场笔记[070928]: 这座墙是帮我们阻挡其它人的
- 职场笔记[070928]: 这座墙是帮我们阻挡其它人的
- 职场笔记[070928]: 这座墙是帮我们阻挡其它人的
- 职场笔记[070928]: 这座墙是帮我们阻挡其它人的
- 让防火墙顺从我们的意图来工作
- 点击网页上的联系我们弹出QQ对话框的实现
- 流逝的岁月,致我们逝去的青春