結果
問題 |
No.1644 Eight Digits
|
ユーザー |
![]() |
提出日時 | 2021-08-13 21:26:26 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 3 ms / 1,000 ms |
コード長 | 1,050 bytes |
コンパイル時間 | 1,829 ms |
コンパイル使用メモリ | 169,228 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-03 17:04:01 |
合計ジャッジ時間 | 2,747 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 25 |
ソースコード
#include <bits/stdc++.h> using namespace std; #define int long long using vec_int = vector<int>; using vec_ii = vector<vec_int>; using vec_iii = vector<vec_ii>; using vec_iiii = vector<vec_iii>; using P = pair<int,int>; using T = tuple<int,int,int>; using ll = long long; using ld = long double; #define rep(i, n) for(int i = 0; i < (int)(n); i++) void cout_line(vector<int> &a){ for(int i=0;i<a.size();i++){ if(i<a.size()-1){ cout<<a.at(i)<<" "; }else{ cout<<a.at(i)<<endl; } } } int charToInt(char c){ char zero_num = '0'; return (int)c - (int)zero_num; } signed main(){ int N = 8; int K; cin>>K; vector<int> perm_vec(N); rep(i, N){ perm_vec.at(i) = i + 1; } int ans = 0; do{ int num = 0; int temp = 1; rep(i, 8){ num += perm_vec.at(i)*temp; temp *= 10; } if(num%K==0)ans++; } while(next_permutation(perm_vec.begin(),perm_vec.end())); cout<<ans<<endl; return 0; }