博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 3789 hdoj 3789
阅读量:4120 次
发布时间:2019-05-25

本文共 1382 字,大约阅读时间需要 4 分钟。

奥运排序问题

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 661    Accepted Submission(s): 158
Problem Description
按要求,给国家进行排名。
 
Input
有多组数据。
第一行给出国家数N,要求排名的国家数M,国家号从0到N-1。
第二行开始的N行给定国家或地区的奥运金牌数,奖牌数,人口数(百万)。
接下来一行给出M个国家号。
 
Output
排序有4种方式: 金牌总数 奖牌总数 金牌人口比例 奖牌人口比例
对每个国家给出最佳排名排名方式 和 最终排名
格式为: 排名:排名方式
如果有相同的最终排名,则输出排名方式最小的那种排名,对于排名方式,金牌总数 < 奖牌总数 < 金牌人口比例 < 奖牌人口比例
如果有并列排名的情况,即如果出现金牌总数为 100,90,90,80.则排名为1,2,2,4.
每组数据后加一个空行。
 
Sample Input
4 44 8 16 6 24 8 22 12 40 1 2 34 28 10 18 11 28 12 38 13 40 3
 
Sample Output
1:31:12:11:21:11:1
 
#include<stdio.h>
int main(){
    int i,j,s[500][3],n,m;
    double s1[500],s2[500],s3[500],s4[500];
    int num[500],a,b,c,d;
    while(scanf("%d%d",&n,&m)!=EOF){
        for(i=0;i<n;i++){
            s1[i]=-1;
            s2[i]=-1;
            s3[i]=-1;
            s4[i]=-1;
        }
        for(i=0;i<n;i++){
            scanf("%d%d%d",&s[i][0],&s[i][1],&s[i][2]);
        }
        for(i=0;i<m;i++){
            scanf("%d",&num[i]);
            s1[num[i]]=s[num[i]][0];
            s2[num[i]]=s[num[i]][1];
            s3[num[i]]=s[num[i]][0]*1.0/s[num[i]][2];
            s4[num[i]]=s[num[i]][1]*1.0/s[num[i]][2];
        }
        for(i=0;i<m;i++){
            a=1,b=1,c=1,d=1;
            for(j=0;j<n;j++){
                if(s1[num[i]]<s1[j]) a++;
                if(s2[num[i]]<s2[j]) b++;
                if(s3[num[i]]<s3[j]) c++;
                if(s4[num[i]]<s4[j]) d++;
            }
            if(a<=b&&a<=c&&a<=d) printf("%d:1\n",a);
            else if(b<a&&b<=c&&b<=d) printf("%d:2\n",b);
            else if(c<a&&c<b&&c<=d) printf("%d:3\n",c);
            else if(d<a&&d<b&&d<c) printf("%d:4\n",d);
        }
        printf("\n");
    }
    return 0;
}

转载地址:http://txtpi.baihongyu.com/

你可能感兴趣的文章
字节跳动安卓开发实习生面试分享
查看>>
好书分享之——《能力陷进》
查看>>
阅读笔记《c++ primer》
查看>>
阅读笔记《C++标准程序库》
查看>>
基于mirror driver的windows屏幕录像
查看>>
MyEclipse中改变选择JDK版本
查看>>
JS实现可编辑下拉框
查看>>
js网页定位,window,body元素的定位属性
查看>>
计算机编程简史图
查看>>
Myeclipse 快捷键大全
查看>>
properties文件读写自己写的方法
查看>>
properties文件读写自己写的方法
查看>>
Java保留小数问题
查看>>
用Java修改Window或者Linux下的hosts文件
查看>>
java servlet 调用oracle数据库存储过程
查看>>
java struts2模拟百度百科图片中的防盗链设置
查看>>
java 通过request.getHeader("user-agent")解析浏览器
查看>>
java 服务器获取请求的IP方法之总结
查看>>
数据库学习,树形结构的数据库表Schema设计方案
查看>>
Java常用文件目录处理代码集
查看>>