40分,实在不清楚错哪了
查看原帖
40分,实在不清楚错哪了
916779
answerking楼主2024/7/1 15:18
#include<iostream>
#include<cstring>
using namespace std;
int t;
int a[30];
void scan(int a[]) {
	string s;
	cin>>s;
	a[0]=s.size();
	for(int i=1; i<=a[0]; i++) {//将读入的n一位一位放在数组a里,a[0]是长度 
		a[i]=s[a[0]-i]-'0';
	}
}
int main() {
	int t;
	cin>>t;
	while(t--) {
		memset(a,0,sizeof(a));
		scan(a); 
		if(a[1]%4==0||a[a[0]]%4==0) {//删到只剩一位的情况 
			cout<<"Yes"<<endl;
			continue;
		}
		//下面是删到只剩两位的情况 
		bool flag=false;
		for(int i=1; i<a[0]; i++) {
			if((a[i]*10+a[i+1])%4==0||(a[i]*10+a[a[0]])%4==0) {
				cout<<"Yes"<<endl;
				flag=true;
				break;
			}
		}
		if(!flag) {
			cout<<"No"<<endl;
		}
	}
	return 0;
}
 
2024/7/1 15:18
加载中...