代码里的说明有些简陋
#include<iostream>
using namespace std;
long long a;
int i,A[13];
void fj(){//分解a的各个数位
long long g=a;
while(g!=0){
i++;
A[i]=g%10;
g/=10;
}
return;
}
int sun(int x){//加和(我知道是sum)
int ans=0;
while(x!=0){
ans+=x%10;
x/=10;
}
return ans;
}
void hhh(){//随便起的名字。用来更改奇数位上的数
for(int j=1;j<=i;j+=2){
A[j]*=7;
while(A[j]>9) A[j]=sun(A[j]);
}
return;
}
void hc(){//将a的各位合成一个数
a=0;
for(int j=i;j>=1;j--){
a*=10;
a+=A[j];
}
return;
}
int main(){
int n;
scanf("%d",&n);
for(int k=1;k<=n;k++){
i=0;
scanf("%lld",&a);
fj();
hhh();
hc();
a=sun(a);
if(a%8==0){
printf("T\n");
}else{
printf("F\n");
}
}
return 0;
}