问个题……
  • 板块灌水区
  • 楼主WiseStar
  • 当前回复3
  • 已保存回复3
  • 发布时间2024/5/12 17:43
  • 上次更新2024/5/12 17:59:04
查看原帖
问个题……
1029529
WiseStar楼主2024/5/12 17:43

本蒟蒻很久没上洛谷了,今天打开发现蓝名了

言归正传,问道题:

代码:

#include<iostream>
using namespace std;
int n,k,d[11],qian,bai,shi,ge,x;
bool tmp;
int xunhuan(int a){
	for(int i=1;i<=k;i++)
		if(a==d[i])
			a++,xunhuan(a);
	return a;
}
void si(){
	tmp=false;
	qian=n/1000,bai=(n-qian*1000)/100,shi=(n-qian*1000-bai*100)/10,ge=n%10;
	qian=xunhuan(qian),bai=xunhuan(bai),shi=xunhuan(shi),ge=xunhuan(ge);
	printf("%d%d%d%d",qian,bai,shi,ge);
}
void san(){
	tmp=false;
	bai=n/100,shi=(n-bai*100)/10,ge=n%10;
	bai=xunhuan(bai),shi=xunhuan(shi),ge=xunhuan(ge);
	printf("%d%d%d",bai,shi,ge);
}
void er(){
	tmp=false;
	shi=n/10,ge=n%10;
	shi=xunhuan(shi),ge=xunhuan(ge);
	printf("%d%d",shi,ge);
}
void yi(){
	tmp=false;
	ge=n;
	ge=xunhuan(ge);
	printf("%d",ge);
}
int main(){
	scanf("%d%d",&n,&k);
	for(int i=1;i<=k;i++)
		scanf("%d",&d[i]);
	if(n>=1000)
		si();
	else if(n>=100)
		san();
	else if(n>=10)
		er();
	else
		yi();
	return 0;
}
2024/5/12 17:43
加载中...