View Code of Problem 100

#include<string>
#include<cstring>
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
typedef struct music {
	string name;
	double h, m, t;
	int score;
}music;
music a[101];
bool cmp(music a, music b)
{
	if (a.score != b.score)
		return a.score > b.score;
	return a.name < b.name;
}
int main()
{
	int n;
	while (cin >> n && n != 0)
	{
		for (int i = 0;i < n;i++)
		{
			char z;
			cin >> a[i].name >> a[i].h >> z >> a[i].m;
			a[i].t = a[i].h * 60 + a[i].m;
		}
		int q;
		cin >> q;
		while (q--)
		{
			string s;
			int c, b;
			char z;
			cin >> s >> c >> z >> b;
			double time = c * 60 + b;
			for (int i = 0;i < n;i++)
			{
				if (s == a[i].name)
				{
					double z = a[i].t / 5.0;
					a[i].score += (int)(time / z);
				}
			}
		}
		sort(a, a + n, cmp);
		for (int i = 0;i < n;i++)
		{
			cout << a[i].name << " " << a[i].score << endl;
		}
	}
	
}

Double click to view unformatted code.


Back to problem 100