#include<iostream>
using namespace std;
//不知道为啥在这个cpp里 run不了,别处就可以
int main(){
int y,m,d;
//int month[12]={31,28,31,30,31,30,31,31,30,31,30,31};不能放外面,
while(cin>>y>>m>>d){
int month[12]={31,28,31,30,31,30,31,31,30,31,30,31};//放外面的话只要有一次改了后面的变了
int ans=0;
if((y%4==0&&y%100!=0)||y%400==0) month[1]=29;
for(int i=0;i<m-1;i++){
ans+=month[i];
}
ans+=d;
cout<<ans<<endl;
}
return 0;
}
#include<iostream>
using namespace std;
int main(){
int ans;
for(int i=0;i<10;i++)
for(int j=0;j<10;j++)
for(int k=0;k<10;k++){
ans=i*100+j*10+k+j*100+k*10+k;
if(ans==532)
cout<<i<<' '<<j<<' '<<k<<' '<<endl;
}
return 0;
}
题目描述:求最大最小数-qh
输入N个(N<=10000)数字,求出这N个数字中的最大值和最小值。每个数字的绝对值不大于1000000。
输入描述:
输入包括多组测试用例,每组测试用例由一个整数N开头,接下去一行给出N个整数。输出描述:
输出包括两个整数,为给定N个数中的最大值与最小值。示例1
输入
复制
5 1 2 3 4 5 3 3 7 8输出
复制
5 1 8 3#include<iostream> using namespace std; int main(){ int t; while(cin>>t){ int a[t];//不能放外面,t没初始化 for(int i=0;i<t;i++) cin>>a[i]; int maxx=a[0],minn=a[0]; for(int i=1;i<t;i++){ if(a[i]>maxx) maxx=a[i]; if(a[i]<minn) minn=a[i]; } cout<<maxx<<' '<<minn<<endl; } return 0; }
题目描述
写个算法,对2个小于1000000000的输入,求结果。 特殊乘法举例:123 * 45 = 1*4 +1*5 +2*4 +2*5 +3*4+3*5
输入描述:
两个小于1000000000的数输出描述:
输入可能有多组数据,对于每一组数据,输出Input中的两个数按照题目要求的方法进行运算后得到的结果。示例1
输入
复制
123 45输出
复制
54
#include<iostream> using namespace std; int main(){ string a,b; while(cin>>a>>b){ int ans=0; for(int i=0;i<a.length();i++){ for(int j=0;j<b.length();j++){ ans+=(a[i]-'0')*(b[j]-'0'); } } cout<<ans<<endl; } return 0; }
题目描述:成绩排序-qh
用一维数组存储学号和成绩,然后,按成绩排序输出。
输入描述:
输入第一行包括一个整数N(1<=N<=100),代表学生的个数。 接下来的N行每行包括两个整数p和q,分别代表每个学生的学号和成绩。输出描述:
按照学生的成绩从小到大进行排序,并将排序后的学生信息打印出来。 如果学生的成绩相同,则按照学号的大小进行从小到大排序。示例1
输入
复制
3 1 90 2 87 3 92输出
复制
2 87 1 90 3 92#include<iostream> #include<algorithm> using namespace std; struct stu{ int num,sco; }a[1000]; bool cmp(stu x,stu y){ if(x.sco==y.sco) return x.num<y.num; return x.sco<y.sco; } int main(){ int t; cin>>t; for(int i=0;i<t;i++) cin>>a[i].num>>a[i].sco; sort(a,a+t,cmp); for(int i=0;i<t;i++) cout<<a[i].num<<' '<<a[i].sco<<endl; return 0; }