GESP四级幸运树无脑题解
2026-09-14 22:44:45
发布于:江苏
6阅读
0回复
0点赞
累死我了,这个模拟
为了保证安全,我无脑全开了long。
模拟就是题目让你干什么你就干什么,因此我就开了三个函数。不用pow是因为pow返回小数无法参与取模运算。
代码如下(复杂,但这是我码风(/ω\)):
#include<bits/stdc++.h>
using namespace std;
long ges(long n){ //变换求和
n*=7;
while(n>9){
n=n%10+n/10;
}
return n;
}
long long poww(long a,long b){
long ans=1;
for(int i=1;i<=b;i++){
ans*=a;
}
if(b==0) return 1;
return ans;
}
bool f(long long n){//求幸运数
long c=0,x,an=n;
while(n!=0){
c++;
if(c%2!=0){
x=n%10;
x=ges(x);
an=an-(n%10)*poww(10,c-1)+x*poww(10,c-1);
}
n/=10;
}
int sum=0;
while(an!=0){
sum+=an%10;
an/=10;
}
if(sum%8==0) return 1;
else return 0;
}
long long a[30];
int main(){
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
if(f(a[i])) cout<<"T\n";
else cout<<"F\n";
}
return 0;
}
这里空空如也








有帮助,赞一个