「題解」:表達式密碼

問題 A: 表達式密碼

時間限制: 1 Sec  內存限制: 512 MBc++

題面


題面謝絕公開。spa

題解


sb題,沒辦法分類。blog

直接跑,把一個減法拆成一個減法一個加法。內存

因爲不能出現前導零,因此若是出現0了繼續拆。it

代碼:class

 

#include<bits/stdc++.h>
#define rint register int
using namespace std;
int len,tot;
char str[100005],ans[200006];
bool zf;
int main()
{
	scanf("%s",str+1);
	len=strlen(str+1),zf=1;
	for(rint i=1;i<=len;++i)
	{
//		ans[++tot]=str[i];
		if(str[i]=='-'){zf=0;ans[++tot]=str[i];continue;}
		if(str[i]=='+'){zf=1;ans[++tot]=str[i];continue;}
		if(zf==0&&str[i-1]!='-')
		{
			ans[++tot]='+';
			if(str[i]!='0')zf=1;
		}
		ans[++tot]=str[i];
	}
	for(rint i=1;i<=tot;++i)
		cout<<ans[i];
	puts("");return 0;
}
相關文章
相關標籤/搜索