题意:
输入两个数,n、 p
如果 p=np; Y
else N
题解:
直接分情况,
第一个数是否是1.
第二个数是否是0;
如果是的话,Y。
否则N
但是两个数可能是整数,可能是小数,而且精度爆double。
所以用字符串。
#include<iostream>
#include<cstdio>
#include<cstring>
#include<set>
#define LL long long
const int maxn=2<<18;
using namespace std;
char a[5000000],b[5000000];
int main(){
int T;
scanf("%d",&T);
while(T--){
scanf("%s",a);
scanf("%s",b);
int f=0,dian=1,cnt=0;;
for(int i=0;i<strlen(a);i++){
if(a[i]=='.') {
dian=0;continue;
}
if(dian){
if(a[i]!='1'&&a[i]!='0') {f=0;break;}
if(cnt) {f=0;break;}
if(a[i]=='1') cnt=1,f=1;
}else{
if(a[i]!='0') {f=0;break;}
}
}
if(f){
printf("Y\n"); continue;
}
f=1;
for(int i=0;i<strlen(b);i++){
if(b[i]=='.') continue;
if(b[i]!='0') f=0;
}
if(f) printf("Y\n");
else printf("N\n");
}
return 0;
}