#include #include #include #include using namespace std; class BrokenButtons { public: vector v; string itos(int i) { char buf[100]; sprintf(buf, "%d", i); return string(buf); } bool fine(int x) { if (x < 0) return false; string s = itos(x); for (int i=0; i v1) { int best1 = 10000000; v = v1; for (int i=0; i<500001; ++i) { if (fine(x-i)) { best1 = itos(x-i).size()+i; break; } else if (fine(x+i)) { best1 = itos(x+i).size()+i; break; } } int best2 = 10000000; for (int i=0; ; ++i) { if (x==100+i || x==100-i) { best2 = i; break; } } return min(best1, best2); } };