587 词
算法:和三位数排序相同,在三位数的基础上多一个与数字d的比较 #include<bits/stdc++.h>using namespace std;int main() { int a, b, c, d; int x; scanf(“%d %d %d %d”, &a, &b, &c, &d); if (a < b) { x = a; a = b; b = x; } if (a < c) { x = a; a = c; c = x; } if (a < d) { x = a; a = d; d = x; } if (b < c) { x = b; b = c; c = x; } if (b < d) { x = b...
1.9k 词
题目描述某校的惯例是在每学期的期末考试之后发放奖学金。发放的奖学金共有五种,获取的条件各自不同: 院士奖学金,每人8000元,期末平均成绩高于80分(>80),并且在本学期内发表1篇或1篇以上论文的学生均可获得; 五四奖学金,每人4000元,期末平均成绩高于85分(>85),并且班级评议成绩高于80分(>80)的学生均可获得; 成绩优秀奖,每人2000元,期末平均成绩高于90分(>90)的学生均可获得; 西部奖学金,每人1000元,期末平均成绩高于85分(>85)的西部省份学生均可获得; 班级贡献奖,每人850元,班级评议成绩高于80分(>80)的学生干部均可获得; 只要符合条件就可以得奖,每项奖学金的获奖人数没有限制,每名学生也可以同时获得多项奖学金。例如姚林的期末平均成绩是87分,班级评议成绩82分,同时他还是一位学生干部,那么他可以同时获得五四奖学金和班级贡献奖,奖金总数是4850元。 现在给出若干学生的相关数据,请计算哪些同学获得的奖金总数最高(假设总有同学能满足获得奖学金的条件)。 输入输入的第一行是一个整数N(1 &l...
902 词
题目描述给定一个正整数n(1<=n<=20),画出螺旋矩阵。 输入一个正整数n 输出对应画出螺旋矩阵 #include<bits/stdc++.h>using namespace std;const int maxn = 21;int a[maxn][maxn];int n;void show() { for (int x = 0; x < n; x++) { for (int y = 0; y < n; y++) { cout << a[x][y] << “ “; } cout << endl; }}void cal() { int x = 0, y = 0; a[x][y] = 1; for (int k = 2; k <= n * n; ) { while (1) { int nx =...
298 词
题目描述计算从 m 到 n 能同时被3和5整除的数的个数 输入输入两个整数 m, n ( 0 < m <= n < 10000 )。 输出输出从 m 到 n 能同时被3和5整除的数的个数 #include<bits/stdc++.h>using namespace std;int main(){ int n,m,i=0; cin>>m>>n; while(m<=n){ if(m%3==0&&m%5==0){ i++; } m++; } cout<<i<<endl; return 0;}
315 词
将n换成求的位数 3位数比大小就是  n=3;  以此类推 升序 降序只留一个 #include<bits/stdc++.h>using namespace std;int main() { int n=3; //求几个数n就等于几 int a[n]; int i,j,t; for(i=0; i<n; i++){ cin>>a[i];} sort(a,a+n); //升序 sort(a,a+n,greater()); //降序 for(i=0; i<n; i++){ cout<<a[i]<<’ ‘;} return 0;}
795 词
题目描述现在有一群同学都想结成异姓兄弟,规定按照年龄大小来从大到小排序。你来搜集这些同学的信息:姓名和对应的出生年月日。且他们不存在同年同月同日生的情况,你来帮助他们排个序。 输入输入第一行有一个整数N(0< N < 1000)表示N个同学。 接下来有N行,且每行都有一个字符串(全为小写字母且长度小于30)和3个整数 ,分别表示姓名、年、月、日。 所有同学的年龄均为1900年以后的。 输出请按从大到小的顺序输出所有同学的姓名。 假设不存在同年同月同日生的同学。 样例输入123454zhangsan 2000 7 8lisi 2000 5 2wanger 2001 5 1mazi 2000 5 1 样例输出1234mazi lisi zhangsan wanger 题解123456789101112131415161718192021#include<bits/stdc++.h>using namespace std;struct Person { char name[100]; int y, m, d;};...
320 词
题目描述    输出所有形如aabb的四位完全平方数,每一个一行 输入无 输出输出所有形如aabb的四位完全平方数,每一个一行 1234567891011121314151617#include<bits/stdc++.h>using namespace std;int main(){ int a=1000; while(a<10000) { for(int i=33;i\*i<=a;i++) { if(i\*i==a) if(a%10==a/10%10&&a/100%10==a/1000) cout<<a<<endl; } a++; } return 0; }
651 词
题目描述描述国王有一个魔镜,可以把任何接触镜面的东西变成原来的两倍——只是,因为是镜子嘛,增加的那部分是反的。 比如一条项链,我们用AB来表示,不同的字母表示不同颜色的珍珠。如果把B端接触镜面的话,魔镜会把这条项链变为ABBA。如果再用一端接触的话,则会变成ABBAABBA(假定国王只用项链的某一端接触魔镜)。 给定最终的项链,请编写程序输出国王没使用魔镜之前,最初的项链可能的最小长度。 输入第一行是一个整数N(N<=10)表示测试数据的组数) 每组测试数据占一行 只有一个字符串(长度小于100),由大写英文字母组成,表示最终的项链。 输出每组测试数据的输出只有一个整数,表示小H没有使用魔法前,最初的项链可能的最小长度。 题解#include<bits/stdc++.h>using namespace std;bool ok(char* w) { int n = strlen(w); if (n < 2 n & 1)return false; char s[1000]; strcpy(s, w...
647 词
题目描述输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。 输入第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。 输出对于每组输入数据,输出一行,字符中间用一个空格分开。 #include<bits/stdc++.h>using namespace std;int main() { int n; cin >> n; const char* a[3],*b; string t, x, y, z; while (n–) { cin >> t; x = t[0]; y = t[1]; z = t[2]; a[0] = x.c_str(); a[1] = y.c_str(); a[2] = z.c_str(); if (strcmp(a[0], a[1]) > 0) { b ...
605 词
题目描述Print a Rectangle Draw a rectangle which has a height of H cm and a width of W cm. Draw a 1-cm square by single ‘#’. 输入The input consists of multiple datasets. Each dataset consists of two integers H and W separated by a single space. The input ends with two 0 (when both H and W are zero). 输出For each dataset, print the rectangle made of H × W ‘#’. Print a blank line after each dataset. #include<bits/stdc++.h>using namespace std;int main(){ int h,w,i,j; while(scanf(“%d %d”...