結果
| 問題 | 
                            No.1185 完全な3の倍数
                             | 
                    
| コンテスト | |
| ユーザー | 
                             | 
                    
| 提出日時 | 2020-08-22 17:53:40 | 
| 言語 | C++14  (gcc 13.3.0 + boost 1.87.0)  | 
                    
| 結果 | 
                             
                                TLE
                                 
                             
                            
                         | 
                    
| 実行時間 | - | 
| コード長 | 854 bytes | 
| コンパイル時間 | 2,323 ms | 
| コンパイル使用メモリ | 168,976 KB | 
| 実行使用メモリ | 5,248 KB | 
| 最終ジャッジ日時 | 2024-10-15 11:45:09 | 
| 合計ジャッジ時間 | 42,109 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge5 / judge3 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 2 WA * 1 | 
| other | AC * 12 WA * 19 TLE * 8 | 
ソースコード
#include <bits/stdc++.h>
using namespace std;
int main() {
    long long N;cin>>N;
    vector<long long>F{3,30,300,3000,30000,300000,3000000,30000000,300000000};
    if(N<300)cout<<N/3-3<<endl;
    else{
        long long K=30;
        /*string S=to_string(N);int U=((S[0]-'0')-1)/3;
        for(int X=0;X<S.size()-1;X++){
            U*=4;
        }
        K+=U;
            S.erase(0,1);int F=stoi(S);*/
            for(long long X=300;X<=N;X+=3){
                string M=to_string(X);bool J=false;
                if((M[0]-'0')%3!=0)X=((M[0]-'0')/3+1)*(F[M.size()-1]);
                for(int Y=0;Y<M.size();Y++){
                    if(((int)(M[Y]-'0'))%3!=0){
                        J=true;break;
                    }
                }
                if(!J){
                  K++;
                }
            }
        cout<<K<<endl;
    }
}