为什么这两个代码都能过
  • 板块P1106 删数问题
  • 楼主q1uple
  • 当前回复2
  • 已保存回复2
  • 发布时间2022/6/12 20:20
  • 上次更新2023/10/27 23:25:03
查看原帖
为什么这两个代码都能过
539133
q1uple楼主2022/6/12 20:20

第一个

#include<bits/stdc++.h>
using namespace std;
int n;
string str;
int main()
{
	cin>>str;
	cin>>n;
	while(n--)
	{
		for(int i=0;i<=str.size()-1;i++)
		{
			if(str[i]>str[i+1])
			{
				str.erase(i,1);
				break;
			}
		}
	}
	if(str=="0")
	{
		cout<<"0";
	}
	int i=0;
	while(i<=str.size()&&str[i]=='0') 
	{
		str.erase(i,1);
	}
	cout<<str;
}

第二个

#include<bits/stdc++.h>
using namespace std;
int n;
string str;
int main()
{
	cin>>str;
	cin>>n;
	while(n>0)
	{
		int i=0;
		for( i=0;i<str.size()-1;i++)
		{
			if(str[i]>str[i+1])
			{
				str.erase(i,1);
				n--;
				break;
			}
		}
		if(i==str.size()-1)
		break;
	}
	while(n>0)
	{
		str.erase(str.size()-1,1);	
		n--;
	} 
	
	
	while(2<=str.size()&&str[0]=='0') 
	{
		str.erase(0,1);
	}
	cout<<str;
}
2022/6/12 20:20
加载中...