hdu 1084 (水,排序)
来源:互联网 发布:椎管螺纹编程实例 编辑:程序博客网 时间:2024/04/19 18:57
点击打开链接
有点恶心的排序,不能改变原来的下表,得用四个数组分别存做题数为4,2,3,1的下表,并且在求排名是,要对下班进行排序(还好数据小可以用冒泡)。。
#include"stdio.h"#include"string.h"#include"stdlib.h"struct node{int p,t,mark;}A[101];int cmp(const void*a,const void*b){return *((int*)a)-*((int*)b);}void fun(int *a,int n){int i,j,t;for(i=0;i<n;i++){for(j=i+1;j<n;j++){if(A[a[j]].t<A[a[i]].t){t=a[i];a[i]=a[j];a[j]=t;}}}for(i=0;i<n;i++)A[a[i]].mark=i+1;}int main(){int i;//数组ai存做题数为i的学生的下标,li为长度int a1[101],l1;int a2[101],l2;int a3[101],l3;int a4[101],l4;int n,h,m,s,p;while(scanf("%d",&n),n>0){l1=l2=l3=l4=0;for(i=0;i<n;i++){scanf("%d %d:%d:%d",&p,&h,&m,&s);A[i].p=p;A[i].t=h*3600+m*60+s;if(p==4)a4[l4++]=i;if(p==3)a3[l3++]=i;if(p==2)a2[l2++]=i;if(p==1)a1[l1++]=i;}fun(a1,l1);fun(a2,l2);fun(a3,l3);fun(a4,l4);for(i=0;i<n;i++){if(A[i].p==5)printf("100\n");else if(A[i].p==0)printf("50\n");else if(A[i].p==4){if(A[i].mark<=l4/2)printf("95\n");else printf("90\n");}else if(A[i].p==3){if(A[i].mark<=l3/2)printf("85\n");else printf("80\n");}else if(A[i].p==2){if(A[i].mark<=l2/2)printf("75\n");else printf("70\n");}else if(A[i].p==1){if(A[i].mark<=l1/2)printf("65\n");else printf("60\n");}}printf("\n");}return 0;}
- hdu 1084 (水,排序)
- HDU 1106 排序(水~)
- HDU 1862 EXCEL排序 (排序水题)
- HDU 2000 ASCII码排序(水~)
- HDU 2020 绝对值排序(水~)
- Hdu 的一道水题 排序(hdu 1.3.6)
- 排序(HDU)
- HDU 2020 - 绝对值排序(排序)
- HDU 2020 绝对值排序(排序)
- 拓扑排序(HDU 1285、HDU 5695)
- 排序背包(hdu 3466 & hdu 5501)
- hdu 3342 拓扑排序 水
- hdu 1031 排序水题
- hdu 5038(排序水题)
- hdu 1236 排名(排序)
- hdu Reward(拓扑排序)
- hdu 2145 (排序+dij)
- hdu 2141 (二分+排序)
- (译)如何使用cocos2d1.0来给sprite添加Mask(遮罩)
- Crontab
- top、postop、scrolltop、scrollHeight、offsetHeight
- 金蝶软件K3和金蝶软件KIS有什么不同?K3和其他财务软件的最大不同是什么?
- Eclipse快捷键大全(转载)
- hdu 1084 (水,排序)
- PHP转换文件夹下所有文件编码
- 解决Field 'ssl_cipher' doesn't have a default value的问题(mysql创建用户名和密码)
- hdu1384
- solrcloud,tomcat,外部zookeeper配置详解
- 响应式网页设计学习笔记
- 关于arp攻击的java解决方案
- Oracle 11.2.0.1 for RHEL5-6 x86和x64静默安装
- CString string char * int double float 之间转化大全