結果
問題 | No.1250 汝は倍数なりや? |
ユーザー |
|
提出日時 | 2021-05-02 15:54:39 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 95 ms / 1,000 ms |
コード長 | 533 bytes |
コンパイル時間 | 1,979 ms |
コンパイル使用メモリ | 193,940 KB |
最終ジャッジ日時 | 2025-01-21 05:56:00 |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 49 |
ソースコード
#include<bits/stdc++.h> using namespace std; int N,H; vector<int>A; bool check(int i){ int H_sum=0; while(H%i==0) H/=i,H_sum++; int N_sum=0; for(int j:A){ if(j==0)return true; while(j%i==0) j/=i,N_sum++; } if(H_sum>N_sum)return false; return true; } bool solve(){ for(int i=2;i*i<=H;i++){ if(H%i==0 && !check(i)) return false; } return H==1?true:check(H); } int main(){ cin>>N>>H; A.resize(N); for(int i=0;i<N;i++) cin>>A[i]; puts(solve()?"YES":"NO"); }