AOJ 0226 - Hit and Blow
Hit&Blowの問題.
コード内はBlowがBrowになってますが気にしない.
ショートコーディングは辛かったのでやめました(技術の欠如)
#include <iostream> int main(){ std::string a, b; while(std::cin >> a >> b, a != "0"){ int hit = 0, brow = 0, as[10] = {0}, bs[10] = {0}; //hitの判定, browの準備 for(int i=0;i<4;i++){ if(a[i] == b[i])hit++; as[a[i]-'0']++, bs[b[i]-'0']++; } //仮のbrowを求める for(int i=0;i<10;i++){ if(as[i] > 0 && bs[i] > 0) brow++; } //仮のbrowにはhitも含まれているので引く brow -= hit; std::cout << hit << " " << brow << std::endl; } }