社区讨论
本地测样例能过,洛谷IDE显示样例RE,评测结果全RE……
P1030[NOIP 2001 普及组] 求先序排列参与者 3已保存回复 6
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 6 条
- 当前快照
- 1 份
- 快照标识符
- @locfluct
- 此快照首次捕获于
- 2023/10/30 13:00 2 年前
- 此快照最后确认于
- 2023/11/05 00:37 2 年前
CPP
#include<cstdio>
#include<string>
using namespace std;
string readstr(int mode){
string ans="";
char tmp;
while(1){
tmp=getchar();
if(!(tmp>=33&&tmp<=126)&&mode==1||(tmp=='\n'||tmp=='\r'||tmp==EOF)&&mode==2||tmp==EOF&&mode==3)
break;
else
ans+=tmp;
}
return ans;
}
void writestr(string a){
for(int i=0;i<a.size();i++)
putchar(a[i]);
}
string work(string b,string c){
if(b.size()<=1)
return b;
char root=c[c.size()-1];
int root_pos=b.find(root);
string leftb=b.substr(0,root_pos);
string leftc=c.substr(0,root_pos);
string rightb=(root_pos+1>=b.size()?"":b.substr(root_pos+1,b.size()-root_pos-1));
string rightc=c.substr(root_pos,b.size()-root_pos-1);
return root+work(leftb,leftc)+work(rightb,rightc);
}
int main(void){
string b,c;
b=readstr(2);
c=readstr(2);
writestr(work(b,c));
return 0;
}
回复
共 6 条回复,欢迎继续交流。
正在加载回复...