ISBN号码:
#include <bits/stdc++.h> using namespace std; int main() { string a; cin>>a; int num=0,sum=0; for(int i=0;i<a.length()-1;i++) { if(a[i]!='-') { num++; sum+=(a[i]-'0')*num; } } char c; if(sum%11==10) { c='X'; } else { c=sum%11+'0'; } if(c==a[a.length()-1]) { cout<<"Right"; } else { a[a.length()-1]=c; cout<<a; } return 0; }
RELU:
#include<stdio.h> int relu(int x) { if(x>=0)return x; else return 0; } int main() { int n; int w, score, sum=0; scanf("%d",&n); for(int i=0;i<n;i++) { scanf("%d %d",&w,&score); sum+=w*score; } printf("%d",relu(sum)); return 0; }
Z字形扫描:
#include <bits/stdc++.h> using namespace std; int a[500][500]; int main() { int n,direction=0; //0右 1左下 2下 3右上 cin>>n; for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { cin>>a[i][j]; } } int x=0,y=0,sum=1,temp,flag=0; cout<<a[0][0]<<" "; while(sum<n*n) { sum++; if(direction==0) { y++; } else if(direction==1) { x++; y--; } else if(direction==2) { x++; } else if(direction==3) { x--; y++; } cout<<a[x][y]<<" "; if(n%2==0) { if(x==n-1&&y==0)flag=1; } else { if(x==0&&y==n-1)flag=1; } if((x==0||y==0||x==n-1||y==n-1)&&flag==0) direction=(direction+1)%4; else if((x==0||y==0||x==n-1||y==n-1)&&flag==1)direction=(direction+3)%4; } return 0; }
卖菜:
//卖菜 /* #include <bits/stdc++.h> using namespace std; int a[1002]={0}; int main() { int n,b; cin>>n; for(int i=1;i<=n;i++) cin>>a[i]; for(int i=1;i<=n;i++) { if(i==1) { b=(a[i]+a[i+1])/2; } else if(i==n) { b=(a[i-1]+a[i])/2; } else { b=(a[i-1]+a[i]+a[i+1])/3; } cout<<b<<" "; } return 0; } */ #include <bits/stdc++.h> using namespace std; int t[1000000]={0}; int main() { int n; int min=1000000,max=1; int time=0; int a,b; cin>>n; for(int i=0;i<n;i++) { cin>>a>>b; if(a<min)min=a; if(b-1>max)max=b-1; for(int j=a;j<b;j++) { t[j]++; } } for(int i=0;i<n;i++) { cin>>a>>b; if(a<min)min=a; if(b-1>max)max=b-1; for(int j=a;j<b;j++) { t[j]++; } } for(int i=min;i<=max;i++) { if(t[i]==2)time++; } cout<<time; return 0; }
出现次数最多的数:
#include <bits/stdc++.h> using namespace std; int a[10001]={0}; int main() { int n,t,max=0,j; cin>>n; for(int i=0;i<n;i++) { cin>>t; a[t]++; if(a[t]>max) { max=a[t]; } } for(j=1;j<=10000;j++) { if(a[j]==max)break; } cout<<j; return 0; }
窗口:
#include <bits/stdc++.h> using namespace std; struct window { int x1; int x2; int y1; int y2; int num; int flag; }; struct window win[10]; int main() { int n,m,x,y; window temp; cin>>n>>m; for(int i=0;i<n;i++) { cin>>win[i].x1>>win[i].y1>>win[i].x2>>win[i].y2; win[i].num=i+1; win[i].flag=n-1-i; } for(int i=0;i<m;i++) { cin>>x>>y; int j; for(j=n-1;j>=0;j--) { if(x>=win[j].x1&&x<=win[j].x2&&y>=win[j].y1&&y<=win[j].y2) { cout<<win[j].num<<endl; temp=win[j]; for(int t=j;t<n-1;t++) { win[t]=win[t+1]; } win[n-1]=temp; break; } } if(j==-1)cout<<"IGNORED"<<endl; } return 0; }
打酱油:
#include <bits/stdc++.h> using namespace std; int main() { int n,result; cin>>n; if(n<30) { result=n/10; } else if(n<50) { result=4+(n-30)/10; } else { result=n/50*7+(n-n/50*50)/30*4+(n-n/50*50-(n-n/50*50)/30*30)/10; } cout<<result; return 0; }
俄罗斯方块:
#include <bits/stdc++.h> using namespace std; int g[16][10]; int a[4][4]; int r; struct aa { int x; int y; }; int main() { for(int i=0;i<15;i++) { for(int j=0;j<10;j++) { cin>>g[i][j]; } } for(int j=0;j<10;j++) { g[15][j]=1; } aa temp[4]; int t=0; for(int i=0;i<4;i++) { for(int j=0;j<4;j++) { cin>>a[i][j]; if(a[i][j]==1) { temp[t].x=i; temp[t].y=j; t++; } } } cin>>r; int d; int flag=0; for(int i=0;i<=15;i++) { for(int j=0;j<4;j++) { if(g[temp[j].x+i][temp[j].y+r-1]==1) { flag=1; d=i; break; } } if(flag==1)break; } for(int i=0;i<4;i++) { g[temp[i].x+d-1][temp[i].y+r-1]=1; } for(int i=0;i<15;i++) { for(int j=0;j<10;j++) { cout<<g[i][j]<<" "; } cout<<endl; } return 0; }
分蛋糕:
#include <bits/stdc++.h> using namespace std; int a[1000]; int main() { int n,k,result=0,sum=0; cin>>n>>k; for(int i=0;i<n;i++) { cin>>a[i]; } for(int i=0;i<n;i++) { sum+=a[i]; if(sum>=k) { result++; sum=0; } } if(sum>0)result++; cout<<result; return 0; }
工资计算:
#include <bits/stdc++.h> using namespace std; float p[7]={0.03,0.1,0.2,0.25,0.3,0.35,0.45}; int b[7]={0,1500,4500,9000,35000,55000,80000}; int m[7]; int main() { m[0]=3500; for(int i=1;i<7;i++) { m[i]=m[i-1]+(b[i]-b[i-1])*(1-p[i-1]); } int t,s; cin>>t; if(t<=3500) { cout<<t; return 0; } int i; for(i=0;i<7;i++) { if(t<m[i]) break; } s=(t-m[i-1])/(1-p[i-1])+(3500+b[i-1]); cout<<s; return 0; }
公共钥匙盒:
#include <bits/stdc++.h> using namespace std; struct operate { int flag; int key; int time; }; bool cmp(operate a,operate b) { if(a.time!=b.time) { return a.time<b.time; } else if(a.flag!=b.flag) { return a.flag<b.flag; } else { return a.key<b.key; } } int main() { int n,k,w,s,c; int key[1001]; cin>>n>>k; vector <operate> v; for(int i=1;i<=n;i++) { key[i]=i; } for(int i=0;i<k;i++) { cin>>w>>s>>c; v.push_back({1,w,s}); v.push_back({0,w,s+c}); } sort(v.begin(),v.end(),cmp); for(vector<operate>::iterator it=v.begin();it!=v.end();it++) { if(it->flag==0) { for(int i=1;i<=n;i++) { if(key[i]==0) { key[i]=it->key; break; } } } else { for(int i=1;i<=n;i++) { if(key[i]==it->key) { key[i]=0; break; } } } } for(int i=1;i<=n;i++) { cout<<key[i]<<" "; } return 0; }
红黄绿灯:
#include <bits/stdc++.h> using namespace std; int main() { long long light[3],n,a,b,s,result=0; cin>>light[0]>>light[2]>>light[1]>>n; long long sum=light[0]+light[1]+light[2]; while(cin>>a>>b) if(a==0)result+=b; else { if(a==1)a=0; else if(a==3)a=1; s=(light[a]-b+result)%sum; while(s>=light[a]) { s-=light[a]; a=(a+1)%3; } b=light[a]-s; if(a==0)//红灯 { result+=b; } else if(a==2)//黄灯 { result+=(b+light[0]); } } cout<<result; return 0; }
画图:
#include <bits/stdc++.h> using namespace std; int a[101][101]={0}; int main() { int n; int sum=0; int x1,y1,x2,y2; cin>>n; for(int i=0;i<n;i++) { cin>>x1>>y1>>x2>>y2; for(int j=x1+1;j<=x2;j++) { for(int t=y1+1;t<=y2;t++) { if(a[j][t]==0) { sum++; a[j][t]=1; } } } } cout<<sum; return 0; }
火车购票:
#include <bits/stdc++.h> using namespace std; int a[20]={0}; int main() { int n,p; int i; cin>>n; while(n--) { cin>>p; for(i=0;i<20;i++) { if(p+a[i]<=5) { for(int j=0;j<p;j++) { cout<<i*5+a[i]+1+j<<" "; } cout<<endl; a[i]+=p; break; } } if(i==20) { for(int j=0;j<20;j++) { while(a[j]<5) { ++a[j]; cout<<j*5+a[j]<<" "; p--; if(p==0)break; } if(p==0)break; } cout<<endl; } } return 0; }