Google Code Jam 2015 Round1Bに参加しました
A-smallしか解けませんでした。
Round1Cこそ頑張って突破したいです。(自信なくなってきた)
Problem A 「Counter Culture」 ※small解法
全探索で計算しておきその結果を返します。
int a[1000001]; int main() { REP(i,1000001) a[i]=INF; REP(i,21) { a[i]=i; } FOR(i,1,1000000) { string s = IntToString(i); reverse(ALL(s)); a[i+1] = min(a[i+1],a[i]+1); int t = atoi(s.c_str()); a[t] = min(a[t], a[i]+1); } int T; cin >> T; REP(t,T) { ll N; cin >> N; printf("Case #%d: %d\n",t+1,a[N]); } return 0; }