3 条题解
-
2
#include<bits/stdc++.h> using namespace std; int n,a,b,e,k,maxn,ans,l; char c,d; string s[200]; int main(){ cin >> n; for(int i = 1; i <= n; ++ i) { cin >> s[i] >> a >> b >> c >> d >> e; ans = 0; if(a > 80 && e > 0) ans += 8000; if(a > 85 && b > 80) ans += 4000; if(a > 90) ans += 2000; if(a > 85 && d == 'Y') ans += 1000; if(b > 80 && c == 'Y') ans += 850; if(ans > maxn){ maxn = ans; k = i; } l += ans; } cout << s[k] << endl << maxn << endl << l; }这题只要按条件纯模拟就行了
-
0
#include<bits/stdc++.h> using namespace std; long long n,s1,s2,x,y,t,maxn = INT_MIN; char a,b; string m,h; int main() { cin >> n; for (int i = 1;i <= n; ++ i) { s1 = 0; cin >> m;//姓名 cin >> x >> y;//期末平均成绩,班级评议成绩 cin >> a >> b;//是否是学生干部,是否是西部省份学生 cin >> t;//发表的论文数 if (x > 80 && t >= 1) { s1 += 8000; s2 += 8000; } if (x > 85 && y > 80) { s1 += 4000; s2 += 4000; } if (x > 90) { s1 += 2000; s2 += 2000; } if (x > 85 && b == 'Y') { s1 += 1000; s2 += 1000; } if (y > 80 && a == 'Y') { s1 += 850; s2 += 850; } if (s1 > maxn) { maxn = s1; h = m; } } cout << h << "\n" << maxn << "\n" << s2; } -
-1
#include<bits/stdc++.h> using namespace std; long long n,ans=0,s; string pro_max; struct xkl { string name; int score1,score2,m,passage; char leader,province; }a[200]; int main() { cin>>n; for(int i=1;i<=n;i++) { cin>>a[i].name>>a[i].score1>>a[i].score2>>a[i].leader>>a[i].province>>a[i].passage; if(a[i].score1>80&&a[i].passage>0)a[i].m+=8000; if(a[i].score1>85&&a[i].score2>80)a[i].m+=4000; if(a[i].score1>90)a[i].m+=2000; if(a[i].score1>85&&a[i].province=='Y')a[i].m+=1000; if(a[i].score2>80&&a[i].leader=='Y')a[i].m+=850; if(a[i].m>ans) { ans=a[i].m; } s+=a[i].m; } for(int i=1;i<=n;i++) { if(a[i].m==ans) { pro_max=a[i].name; break; } } cout<<pro_max<<"\n"<<ans<<"\n"<<s; return 0; }
- 1
信息
- ID
- 180
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 2
- 标签
- (无)
- 递交数
- 213
- 已通过
- 132
- 上传者