传智杯简单题奆佬求助 悬赏关注
查看原帖
传智杯简单题奆佬求助 悬赏关注
823773
_sh1kong_楼主2022/12/2 10:38

样例过了,交上去全WA,有奆佬看看嘛
code:

#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
#define ll long long
using namespace std;
int n,l;
string ope;
string filename;
struct node{
	bool lived;
	string name;
}a[4001];
int main()
{
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	scanf("%d",&n);
	for(int kk=1;kk<=n;kk++)
	{
		cin>>ope;
		if(ope=="touch")
		{
			cin>>filename;
			bool fl=1;
			for(int i=1;i<=l;i++)
			{
				if(filename==a[i].name&&a[i].lived)
				{
					fl=0;break;
				}
			}
			if(fl)
			{
				l++;
				a[l].name=filename;
				a[l].lived=1;
			}
		}
		else if(ope=="rm")
		{
			cin>>filename;
			for(int i=1;i<=l;i++)
			{
				if(a[i].name==filename&&a[i].lived) a[i].lived=0;
			}
		}
		else if(ope=="rename")
		{
			string x,y;
			cin>>x;
			cin>>y;
			bool fl=0;
			for(int i=1;i<=l;i++)
			{
				if(a[i].name==y&&a[i].lived)
				{
					fl=1;
				}
			}
			if(fl) continue;
			for(int i=1;i<=l;i++)
			{
				if(a[i].name==x&&a[i].lived) a[i].name=y;
			}
		}
		else if(ope=="ls")
		{
			for(int i=1;i<=l;i++)
			{
				if(a[i].lived) cout<<a[i].name<<endl;
			}
		}
	}
}
2022/12/2 10:38
加载中...