#include #include using namespace std; int main(void){ long p = 2; // p >= 1 long result1 = 0; long result2 = 0; long result3 = 0; // 3の倍数 result1 = (long)(pow(10, p) / 3); // 3の付く数 long init = 1; for (long i = 1; i <= p; i++) { if (i == 1) { result2 = init; } else { result2 = init * 9 + pow(10, i - 1); init = result2; } } // 3の倍数かつ3の付く数 init = 1; for (long i = 1; i <= p; i++) { if (i == 1) { result3 = init; } else { result3 = init * 3 + (init - 1) * 6 + (long)(pow(10, i - 1) / 3) + 1; init = result3; } } // 出力 long result = result1 + result2 - result3; printf("%ld\n", result); return 0; }