#include<bits/stdc++.h> using namespace std; struct student{ int id; int C; int tot; }; int main(){ int n; cin>>n; n++; struct student stds[n]; for(int i=1;i<n;i++){ stds[i].id=i; cin>>stds[i].C; int m,e; cin>>m>>e; stds[i].tot=stds[i].C+m+e; } ...
奖学金(信息学奥赛一本通-T1179)【题目描述】某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金。期末,每个学生都有3门课的成绩:语文、数学、英语。先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,如果两个同学总分和语文成绩都相同,那么规定学号小的...
int main() { int n,s[N][4],i,sum[N],x[N],p[N][2],j,max,t1,t2; scanf(“%d”,&n); for(i=0;i<n;i++){ scanf("%d %d %d",&s[i][0],&s[i][1],&s[i][2]); s [i][3]=i+1;/*学号*/ sum[i]=s[i][0]+s[i][1]+s[i][2];/*总分*/ } for(i=0;i...
原题链接:信息学奥赛一本通T1179-奖学金 某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金。期末,每个学生都有3门课的成绩:语文、数学、英语。先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,如果两个同学总分和语文成绩都相同,那么规定学号小的同学排在...
原题链接:信息学奥赛一本通T1179-奖学金#输入学生人数 n = eval(input('')) #初始化学生列表 lst = [] #循环记录学生语数英成绩,总分和学号(二位列表)[[语,数,英,总分,学号],...] for i in range(n): a = list(map(int,input().strip().split())) a.append(sum(a))...
原题链接:信息学奥赛一本通T1179-奖学金解题思路:注意事项:参考代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 #include <iostream> #include <algorithm> using namespace std;struct Node { int id, c, m, y, z; friend bool operator < (const ...
原题链接:信息学奥赛一本通T1179-奖学金使用数组做的,可以过测试,用的是折半插入排序#include <iostream> using namespace std;typedef struct student{ int num; int c_score; int m_score; int e_score; int sum; }; void cin_s(student *s,int n){...
原题链接:信息学奥赛一本通T1179-奖学金参考代码: //列4储存按从大至小的总成绩 ,其中每个总成绩对应的学生学号储存在列5 ,对应的语文成绩储存在列6。#include<stdio.h>int main(void){ int a,i,j,k; int arr[301][7]={0}; scanf("%d",&a);//a为学生总人数 for(i=1;i<a+1;i++)//...
原题链接:信息学奥赛一本通T1179-奖学金解题思路:注意题目没说有5个人,所以输出时有5个输出5个,没有输出n个 参考代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 #include <bits/stdc++.h>...
原题链接:信息学奥赛一本通T1179-奖学金#include<iostream> using namespace std; struct stu { int c; int d; int e; int sum; }m[300]; void input(int i) { cin>>m[i].c>>m[i].d>>m[i].e; } void print(int i) { if(i!=0)...