题目链接:https://ac.nowcoder.com/acm/contest/3003/G
判断一个式子是不是成立。直接快速幂明显会爆,上取模快速幂,模数1e9+7;
这样就过了,也不知道为啥:
#include <iostream>
#include <cstring>
#include <queue>
#include <algorithm>
#include <cmath>
#include <map>
#include <set>
#define il inline
#define ll long long
#define LL long long
using namespace std;
const int maxn = 1e5 + 10;
const ll inf = 0x7ffffffffff;
const ll mod = 1e9+7;
template<class T>
inline void read(T &res) {
char c;
T flag = 1;
while ((c = getchar()) < '0' || c > '9')if (c == '-')flag = -1;
res = c - '0';
while ((c = getchar()) >= '0' && c <= '9')res = res * 10 + c - '0';
res *= flag;
}
ll t;
ll qpow(ll a,ll b){
ll ans=1;;
a%=mod;
while(b){
if(b&1) ans=(ans*a)%mod;
a=(a*a)%mod;
b>>=1;
}
return ans%mod;
}
int main() {
ll n;
cin>>t;
while(t--){
ll a,b,c,d,e,f,g;
cin>>a>>b>>c>>d>>e>>f>>g;
if(qpow(a,d)+qpow(b,e)+qpow(c,f)==g){
cout<<"Yes"<<endl;
}
else cout<<"No"<<endl;
}
return 0;
}
京公网安备 11010502036488号