求助
查看原帖
求助
983098
henglizuo楼主2024/6/15 18:07
#include <iostream>
#include <vector>

using namespace std;

bool isLucky(long long n) {
	vector<int> digits;
	long long new_number = 0;
	while (n > 0) {
		digits.push_back(n % 10);
		n /= 10;
	}
	for (long long i = 0; i < digits.size(); i += 2) {
		int d = digits[i];
		d = d * 9;

		int sum = d;
		while (d > 9) {
			sum += d % 10;
			d /= 10;
		}
		d = sum;

		if (d > 9) {
			sum = d % 10;
			d /= 10;
			sum += d;
			d = sum;
		}

		digits[i] = d;
	}

	for (int i = digits.size() - 1; i >= 0; i--) {
		new_number = new_number * 10 + digits[i];
	}
	return new_number % 8 == 0;
}

int main() {
	int t;
	cin >> t;

	for (int i = 0; i < t; i++) {
		long long n;
		cin >> n;

		if (isLucky(n))
			cout << "T\n";
		else
			cout << "F\n";
	}

	return 0;
}

30分

2024/6/15 18:07
加载中...