結果

問題 No.3 ビットすごろく
ユーザー ngtkana
提出日時 2020-03-27 02:51:34
言語 C++17(1z)
(gcc 9.3.0)
結果
AC  
実行時間 4 ms
コード長 626 Byte
コンパイル時間 1,817 ms
使用メモリ 8,948 KB
最終ジャッジ日時 2020-03-29 16:35:24

テストケース

テストケース表示
入力 結果 実行時間
使用メモリ
1.txt AC 2 ms
8,940 KB
2.txt AC 2 ms
6,900 KB
3.txt AC 2 ms
6,904 KB
4.txt AC 2 ms
8,948 KB
5.txt AC 2 ms
8,940 KB
6.txt AC 2 ms
8,896 KB
7.txt AC 2 ms
8,940 KB
8.txt AC 2 ms
6,900 KB
9.txt AC 2 ms
6,896 KB
10.txt AC 2 ms
8,896 KB
11.txt AC 2 ms
8,944 KB
12.txt AC 2 ms
8,944 KB
13.txt AC 2 ms
6,900 KB
14.txt AC 2 ms
8,948 KB
15.txt AC 2 ms
8,940 KB
16.txt AC 2 ms
8,896 KB
17.txt AC 3 ms
6,900 KB
18.txt AC 2 ms
6,896 KB
19.txt AC 2 ms
8,896 KB
20.txt AC 2 ms
8,944 KB
99_system_test1.txt AC 4 ms
8,944 KB
challenge01.txt AC 2 ms
8,944 KB
challenge02.txt AC 2 ms
6,904 KB
challenge03.txt AC 2 ms
8,940 KB
system_test1.txt AC 2 ms
8,940 KB
system_test2.txt AC 2 ms
8,896 KB
system_test3.txt AC 2 ms
6,896 KB
system_test4.txt AC 2 ms
8,944 KB
system_test5.txt AC 2 ms
6,896 KB
system_test6.txt AC 2 ms
8,944 KB
system_test7.txt AC 2 ms
6,900 KB
system_test8.txt AC 2 ms
8,940 KB
テストケース一括ダウンロード

ソースコード

diff #
#include<bits/stdc++.h>
using lint=long long;
int main(){
    std::cin.tie(nullptr);std::ios_base::sync_with_stdio(false);
    std::cout.setf(std::ios_base::fixed);std::cout.precision(15);
    lint n;std::cin>>n;
    std::vector<lint>dist(n+1,-2);
    dist.at(1)=0;
    std::vector<lint>que;
    que.push_back(1);
    for(lint i=0;i<(lint)que.size();){
        lint x=que.at(i++);
        lint pc=__builtin_popcountll(x);
        for(lint y:{x-pc,x+pc}){
            if(y<=0||n<y||dist.at(y)!=-2)continue;
            dist.at(y)=dist.at(x)+1;
            que.push_back(y);
        }
    }
    std::cout<<dist.at(n)+1<<'\n';
}
0