JOI 2010 春合宿 day4-1 「Contest」

「面白い」としかいいようがないかな?

#include<cstdio>
#include<algorithm>
#define rep(i,n) for(int i = 0; i < n; i++)
#define rrep(i,n) for(int i = 1; i <= n; i++)
using namespace std;

int d[1001][11][2], p[11], ans[1001];

int main(){
	int n, m, t, x, y, a, b, c;
	char s[12];
	scanf("%d%d%d%d%d",&n,&m,&t,&x,&y);
	
	rrep(i,m){scanf("%d",&a); p[i] = a;}
	
	rep(i,y){
		scanf("%d%d%d%s",&a,&b,&c, s);
		
		switch(s[0]){
			case 'o':
				d[b][c][0] = a;
				break;
			case 'c':
				ans[b] += max(x, p[c] - (a - d[b][c][0]) - 120 * d[b][c][1]);
				break;
			case 'i':
				d[b][c][1] ++;
				break;
		}
	}
	
	rrep(i,n) printf("%d\n",ans[i]);
	
	return 0;
}