#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