题目链接:http://acm.timus.ru/problem.aspx?space=1&num=2073
题意:有t个样例,每个样例输入比赛题目,比赛日期,然后输入n和m,n表示总题数,m表示提交记录数,下面跟m行,然后按格式输出(看样例)
解析:细心点,慢慢写,总能写出来的。。。。(由于有空格,我用的是gets
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <queue>
#include <iostream>
#include <map>
using namespace std;
const int inf = 0x7fffffff;
int n;
char a[10000];
char ans[100];
int main(void)
{
int t;
scanf("%d",&t);
getchar();
puts("+------------------------------+--------+-------------+");
puts("|Contest name |Date |ABCDEFGHIJKLM|");
puts("+------------------------------+--------+-------------+");
while(t--)
{
gets(a);
printf("|%-30s|",a);
gets(a);
printf("%-8s|",a);
int n,m;
scanf("%d %d",&n,&m);
getchar();
for(int i=0;i<n;i++)
ans[i] = '.';
for(int i=0;i<m;i++)
{
char timu[10],an[100];
scanf("%s",timu);
getchar();
gets(an);
if(strcmp(an,"Accepted")==0)
ans[timu[0]-'A']='o';
else if(ans[timu[0]-'A']!='o')
ans[timu[0]-'A']='x';
}
for(int i=0;i<n;i++)
printf("%c",ans[i]);
for(int i=0;i<13-n;i++)
printf(" ");
puts("|");
puts("+------------------------------+--------+-------------+");
}
return 0;
}