#include <bits/stdc++.h> using namespace std; vector<int> vec[100000];//存关系图 bool vis[100000];//标记五服以内的亲属 char sex[100000];//记录性别 bool flag;//标记情侣是否为近亲 void Dfs(int x,int num)//num表示第几代,从0开始 { if(num>=4) return; //超过五代直接退出 for(int i=0;i<vec[x].size();i++){ if(!vis[vec[x][i]]){ vis[vec[x][i]]=1;//标记出现的人 Dfs(vec[x][i],num+1); } else flag=1;//五服之内出现一样的人 } } int main() { int T; cin>>T; while(T--){ int t,fa,ma; char ch; cin>>t>>ch>>fa>>ma; sex[t]=ch; if(fa!=-1){ //-1不用保存,避免数据处理不当导致数组越界 vec[t].push_back(fa);//保存双亲 sex[fa]='M';//记录父亲性别 } if(ma!=-1){ vec[t].push_back(ma); sex[ma]='F'; } } cin>>T; while(T--){ int x,y; cin>>x>>y; if(sex[x]==sex[y]) cout<<"Never Mind"<<endl; //同性 else{ memset(vis,0,sizeof(vis)); vis[x]=1; vis[y]=1; flag=0; Dfs(x,0); Dfs(y,0); if(flag)//被标记过说明这两人为近亲 cout<<"No"<<endl; else cout<<"Yes"<<endl; } } return 0; }
#include<stdio.h> #include<stdlib.h> struct Student { int Scores[100]; double Average; }stu[10005]; int StuNum,JudgeNum,OutNum; double SortScores[10005]; void GetMaxScore(){ long int sum; //每个学生评委打分排序 for(int k=0;k<StuNum;k++){ int t; for (int i = 0; i <JudgeNum; i++) { for (int j = 0; j < JudgeNum-1; j++) { if (stu[k].Scores[j] > stu[k].Scores[j + 1]) { t = stu[k].Scores[j+1]; stu[k].Scores[j + 1] = stu[k].Scores[j]; stu[k].Scores[j] = t; } } } } //求去最高,最低分后的,平均值 for(int c=0;c<StuNum;c++){ sum=0; for(int i=1;i<JudgeNum-1;i++){ sum+=stu[c].Scores[i]; } SortScores[c]=stu[c].Average=sum*1.0/(JudgeNum-2); } //平均值排序,用两个排序是因为两次排序的数值类型不同 double t; for (int i = 0; i <StuNum; i++) { for (int j = 0; j < StuNum-1; j++) { if (SortScores[j] > SortScores[j + 1]) { t = SortScores[j+1]; SortScores[j + 1] = SortScores[j]; SortScores[j] = t; } } } } int main() { int i; scanf("%d %d %d",&StuNum,&JudgeNum,&OutNum); for(i=0;i<StuNum;i++){ for(int j=0;j<JudgeNum;j++){ scanf("%d",&stu[i].Scores[j]); } } GetMaxScore(); for(i=StuNum-OutNum;i<StuNum-1;i++)//用来输出最后一个没有空格 printf("%.3f ",SortScores[i]); printf("%.3f",SortScores[i]); }
标签:8.7,fa,int,sex,stu,Scores,SortScores From: https://www.cnblogs.com/xuxingkai/p/17612599.html