#include<iostream>
#include<cstdio>
#include<map>
#include<cmath>
#include<algorithm>
#define inf 1 << 30
#define db(a) cout << #a << " = " << a << endl
#define db2(a, b) cout << #a << " = " << a << " " << #b << " = " << b << endl
using namespace std;
typedef long long ll;
char ciudades[100][5], linea[100], color[5], material[5];
int n;
void procesar() {
int res = inf;
int id = 0;
for (int i = 0; i < n; i++) {
int cont = 0;
for (int j = 0; j < n; j++) {
if (i == j) continue;
for (int k = 0; k < 5; k++) {
if (ciudades[i][k] != ciudades[j][k])
cont++;
}
}
if (cont < res)
res = cont, id = i + 1;
}
printf("%d\n", id);
}
int main() {
while(gets(linea)) {
if (linea[0] == 'e') {
procesar();
n = 0;
}
else {
if (linea[0] == '#') break;
sscanf(linea, "%c/%c,%c/%c,%c/%c,%c/%c,%c/%c", &color[0], &material[0], &color[1], &material[1], &color[2], &material[2], &color[3], &material[3], &color[4], &material[4]);
for (int i = 0; i < 5; i++) {
switch(color[i]) {
case 'r': ciudades[n][0] = material[i]; break;
case 'o': ciudades[n][1] = material[i]; break;
case 'y': ciudades[n][2] = material[i]; break;
case 'g': ciudades[n][3] = material[i]; break;
case 'b': ciudades[n][4] = material[i]; break;
}
}
n++;
}
}
return 0;
}
lunes, 16 de enero de 2012
154 - Recycling, uva solution
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario