zoukankan      html  css  js  c++  java
  • HDU 1084

    给出第 i 个学生做完的题数和时间,给学生打分

    排个序就行了吧

     1 #include <iostream>
     2 #include <cstdio>
     3 #include <algorithm>
     4 #include <cstring>
     5 using namespace std;
     6 const int N=105;
     7 struct stu{
     8     int h,m,s,num,sco;
     9 }a[10][N];
    10 int n,m[N],p,h,mm,s,ans[N];
    11 bool cmp(stu a,stu b)
    12 {
    13     if(a.h==b.h)
    14     {
    15         if(a.m==b.m) return a.s<b.s;
    16         return a.m<b.m;
    17     }
    18     return a.h<b.h;
    19 }
    20 void fuc(stu a[],int m,int t)
    21 {
    22     for(int i=1;i<=m;i++)
    23     {
    24         if(i<=m/2) ans[a[i].num]=t+5;
    25         else ans[a[i].num]=t;
    26     }
    27 }
    28 int main()
    29 {
    30     while(~scanf("%d",&n)&&n!=-1)
    31     {
    32         memset(m,0,sizeof(m));
    33         for(int i=1;i<=n;i++)
    34         {
    35             scanf("%d %d:%d:%d",&p,&h,&mm,&s);
    36             m[p]++;
    37             a[p][m[p]].num=i;
    38             a[p][m[p]].h=h;
    39             a[p][m[p]].m=mm;
    40             a[p][m[p]].s=s;
    41         }
    42         for(int i=1;i<=4;i++) sort(a[i]+1,a[i]+m[i]+1,cmp);
    43         for(int i=1;i<=m[0];i++) ans[a[0][i].num]=50;
    44         for(int i=1;i<=m[5];i++) ans[a[5][i].num]=100;
    45         for(int i=1;i<=4;i++) fuc(a[i],m[i],10*i+50);
    46         for(int i=1;i<=n;i++) printf("%d
    ",ans[i]);
    47         puts("");
    48     }
    49 }
    我自倾杯,君且随意
  • 相关阅读:
    linux System V IPC Mechanisms
    linux pipes
    linux create a process
    linux processes identifiers
    linux processes
    beaglebone-black reference url
    git commit steps(1)
    hadoop hadoop install (1)
    OpenWrite方法打开现有文件并进行写入
    OpenRead方法打开文件并读取
  • 原文地址:https://www.cnblogs.com/nicetomeetu/p/5595298.html
Copyright © 2011-2022 走看看