結果
問題 |
No.2379 Burnside's Theorem
|
ユーザー |
![]() |
提出日時 | 2025-02-07 00:29:02 |
言語 | C++23 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,792 bytes |
コンパイル時間 | 4,387 ms |
コンパイル使用メモリ | 314,404 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2025-02-07 00:29:08 |
合計ジャッジ時間 | 6,290 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 19 WA * 1 |
ソースコード
#include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> using namespace std; using namespace __gnu_pbds; template <typename T> using ordered_set = tree<T, null_type, less_equal<T>, rb_tree_tag, tree_order_statistics_node_update>; #define io ios::sync_with_stdio(false); cin.tie(0); #define int long long int #define ld long double #define vi vector<int> #define pii pair<int, int> #define PB push_back #define F first #define S second #define MP make_pair #define all(v) v.begin(), v.end() #define forn(a, n) for(int i = a ; i < n ; i++) #define yesno(b) cout << ((b)? "Yes" : "No") #define nl cout << "\n" #define print(v,a) for(auto _ : v) cout << _ << a; #define MOD 998244353ll #define MOD2 1000000007ll #define FL(i, a, n) for(int i = a ; i < n ; i++) #define FR(i, a, n) for(int i = a ; i >= n ; i--) const int inf = 1e17 + 1; bool isPrime(int n) { if(n < 2) return false; for(int i = 2 ; i * i <= n ; i++) { if(n % i == 0) return false; } return true; } void solve(){ int n; cin >> n; if(n < 5 || isPrime(n)) { yesno(1); return ; } set<int> s; for(int i = 2 ; i <= min(10000000ll, n) ; i++) { while(n % i == 0) { s.insert(i); n /= i; } } yesno((int)s.size() <= 2); } signed main(){ io; // freopen("input.txt", "r", stdin); // freopen("output.txt", "w", stdout); int t = 1; // cin >> t; // auto st = chrono::high_resolution_clock::now(); forn(1, t + 1){ // cout << "Case #" << i << ": "; solve(); nl; } // cerr << "Time: " << (ld)(chrono::duration_cast<chrono::milliseconds>(chrono::high_resolution_clock::now() - st).count()) / 1000.0 << "s"; return 0; }