AOJ_0025 Hit and Blow
なんか前にも解いたことがあるような気がするが、きっと気のせい。
#include <cstdio> using namespace std; int main(){ int a[4], b[4]; while(true){ for(int i = 0; i < 4; i++){ if(scanf("%d", &a[i]) == EOF) return 0; } for(int i = 0; i < 4; i++){ scanf("%d", &b[i]); } int hit = 0, blow = 0; for(int i = 0; i < 4; i++){ if(a[i] == b[i]) hit++; } for(int i = 0; i < 4; i++){ for(int j = 0; j < 4; j++){ if(i == j) continue; if(a[i] == b[j]) blow++; } } printf("%d %d\n", hit, blow); } return 0; }