大佬求助#10WA!
查看原帖
大佬求助#10WA!
393715
用户0071楼主2023/10/5 14:19

rt大佬求调

#include <iostream>
#include <cmath>
#include <cstdio>
using namespace std;
long long n;
long long siz(long long x)//求一个整数的长度
{
	long long i=0;
	while(x!=0)
	{
		x/=10;
		i++;
	}
	return i;
}
long long sum1(long long x)//一个整数所有数位的和
{
	long long sum=0;
	while(x!=0)
	{
		sum+=(x%10);
		x/=10;
	}
	return sum;
}
long long cheng7(long long x)//一个整数×7后加所有数位加一起
{
	x*=7;
	while(x>9)
	{
		x = sum1(x);
	}
	return x;
}
int main()
{
	cin>>n;
	while(n--)
	{
		long long k;
		cin>>k;
		long long sizk=siz(k),t=0;
//      若分离一个整数的第x位,则(n/pow(10,x-1))%10;
		for(long long i=sizk-1;i>=1;i-=2)//对k奇数位一位一位便利
		{
			t=long((k/pow(10,i-1)))%10;
			long long t1=cheng7(t);
			k=k-t*pow(10,i-1);
			k=k+t1*pow(10,i-1);
		}
		k = sum1(k);
		if(k%8==0)
			cout<<"T\n";
		else
			cout<<"F\n";
	}
	return 0;
}
2023/10/5 14:19
加载中...