結果

問題 No.1218 Something Like a Theorem
ユーザー ate
提出日時 2020-09-04 23:48:59
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 586 bytes
コンパイル時間 2,240 ms
コンパイル使用メモリ 192,548 KB
最終ジャッジ日時 2025-01-14 06:30:41
ジャッジサーバーID
(参考情報)
judge2 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 15 WA * 1
権限があれば一括ダウンロードができます

ソースコード

diff #

#include<bits/stdc++.h>
using namespace std;

using ll = int_fast64_t;
#define rep(i,n) for(int i=0;i<int(n);++i)
#define repr(i,n) for(int i{n};i-->0;)
ll mpow(ll n,ll p){
  ll ans=1LL;
  while(p){
    if(p&1)ans*=n;
    n*=n;
    p>>=1;
  }
  return ans;
}

signed main(){

  ll n,z;
  cin>>n>>z;

  auto solve = [](ll n,ll z)->bool{
    if(n==1)return true;
    ll xn,yn,zn=mpow(z,n);
    for(ll x=1;xn=mpow(x,n),xn<zn;++x){
      for(ll y=1;yn=mpow(y,n),xn+yn<=zn;++y){
        if(xn+yn==zn)return true;
      }
    }
    return false;
  };
  cout<<(solve(n,z)?"Yes":"No")<<endl;

}
0