玄学代码
查看原帖
玄学代码
1283988
leozhao123楼主2024/10/21 22:12

下了 #1 数据发现输出正确,于是测试数据。

加了assert测试的代码:#1 AC

#include<iostream>
#include<cassert>
using namespace std;
const int day[14]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int main() {
	int m,d,ans=0;
	scanf("%d-%d",&m,&d);
	assert(m==29&&d==31);//
	if(m<=0) m=1,++ans;
	else if(m>12) ++ans;
	if(d<=0) d=(-d)%10,++ans;
	else if(d>day[m]) ++ans;
	cout<<ans;
	return 0;
}

仅删去测试代码后:#1 #7 WA

#include<iostream>
// #include<cassert>
using namespace std;
const int day[14]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int main() {
	int m,d,ans=0;
	scanf("%d-%d",&m,&d);
// 	assert(m==29&&d==31);//
	if(m<=0) m=1,++ans;
	else if(m>12) ++ans;
	if(d<=0) d=(-d)%10,++ans;
	else if(d>day[m]) ++ans;
	cout<<ans;
	return 0;
}

两份代码仅注释不同。

2024/10/21 22:12
加载中...