UOJ Logo

NOI.AC

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#195835#3418. 鹅鸭杀yudongkai12341007ms1396kbC++978b2023-10-18 21:05:082023-10-18 22:41:13

answer

#include<bits/stdc++.h>
using namespace std;
#define N 1010
struct re{
	int per;//身份1鸭2鹅 
	string s;
	string name;
}p[N];
string pls[N];//鸭地点 
string plh[N];//鹅地点 
int h_ans[N];//鹅存亡 
int pls_cnt;
int plh_cnt;
int n;
signed main(){
	cin>>n;
	for(int i=1;i<=n;i++) //输入+预处理 
	{
		string name,s1,s2,pes,s3,s4,s5,pl; 
		cin>>name>>s1>>s2>>pes>>s3>>s4>>s5>>pl;
		p[i].name=name;
		if(pes[0]=='d') p[i].per=1;
		else if(pes[0]=='g') p[i].per=2;
		if(p[i].per==2) plh[++plh_cnt]=pl;
		else if(p[i].per==1) pls[++pls_cnt]=pl;
	}	
	for(int i=1;i<=plh_cnt;i++)
	{
		//cout<<plh[i]<<"!!!";
		for(int j=1;j<=pls_cnt;j++)
			if(plh[i]==pls[j]) h_ans[i]=1;//噶了 
	}
	int cnt=1;
	for(int i=1;i<=n;i++)
	{
		if(p[i].per==1) cout<<p[i].name<<" is alive\n";
		else if(p[i].per==2)
		{
			if(h_ans[cnt]==0) cout<<p[i].name<<" is alive\n";
			else if(h_ans[cnt]==1) cout<<p[i].name<<" is dead\n";
			cnt++;
		}
	}
}

Details

小提示:点击横条可展开更详细的信息

Test #1:

score: 10
Accepted
time: 0ms
memory: 1264kb

input:

1
DnONuKkfsK is a duck, it is at VxdjvTXugQrxHcBy

output:

DnONuKkfsK is alive

result:

ok single line: 'DnONuKkfsK is alive'

Test #2:

score: 10
Accepted
time: 0ms
memory: 1264kb

input:

1
h is a goose, it is at DgPHXhVJtkESkHmf

output:

h is alive

result:

ok single line: 'h is alive'

Test #3:

score: 10
Accepted
time: 0ms
memory: 1276kb

input:

2
HRiAYWN is a goose, it is at EL
dgwgYboiuaytmJOAv is a duck, it is at EL

output:

HRiAYWN is dead
dgwgYboiuaytmJOAv is alive

result:

ok 2 lines

Test #4:

score: 10
Accepted
time: 0ms
memory: 1260kb

input:

2
izNydjl is a goose, it is at qYWlAosa
EISnxurnHqHNKDD is a goose, it is at qYWlAosa

output:

izNydjl is alive
EISnxurnHqHNKDD is alive

result:

ok 2 lines

Test #5:

score: 10
Accepted
time: 0ms
memory: 1276kb

input:

10
NSWzSOl is a duck, it is at VCLAQReUMFYoH
owVUjFuAPuutSaKhLqh is a duck, it is at ZYPmZsegdxJOuB
...

output:

NSWzSOl is alive
owVUjFuAPuutSaKhLqh is alive
iamfqstvZbCYSDhlDnbq is alive
T is alive
zGub is alive...

result:

ok 10 lines

Test #6:

score: 10
Accepted
time: 0ms
memory: 1280kb

input:

10
kjbxCSWpMH is a duck, it is at FIlDOBA
gxRn is a duck, it is at zXofss
vIFtyFL is a duck, it is a...

output:

kjbxCSWpMH is alive
gxRn is alive
vIFtyFL is alive
PFeZj is alive
uEy is alive
qnoZYPzR is alive
Rff...

result:

ok 10 lines

Test #7:

score: 10
Accepted
time: 0ms
memory: 1260kb

input:

10
CdhUNaBieDYujJ is a goose, it is at ftZTshCjDGgjvPZ
e is a duck, it is at HHvP
fnjTJMUYgydjEeAFet...

output:

CdhUNaBieDYujJ is alive
e is alive
fnjTJMUYgydjEeAFet is alive
Vvc is alive
MLHmWVs is alive
AYDTmkf...

result:

ok 10 lines

Test #8:

score: 10
Accepted
time: 3ms
memory: 1392kb

input:

1000
zS is a duck, it is at uZoViqfzXzBHnojfjo
WUzyrypHYFMkE is a goose, it is at RqXtorsLNPVXWX
mbV...

output:

zS is alive
WUzyrypHYFMkE is dead
mbVP is alive
iWelC is alive
DqMTir is alive
Zr is alive
BsHCmmN i...

result:

ok 1000 lines

Test #9:

score: 10
Accepted
time: 0ms
memory: 1396kb

input:

1000
luK is a duck, it is at Jr
kz is a duck, it is at Q
momuTR is a duck, it is at beRModCS
HmqEgsw...

output:

luK is alive
kz is alive
momuTR is alive
HmqEgswLg is dead
uFNEeUULkDT is alive
uQgDGhomNgYQuwndOxKn...

result:

ok 1000 lines

Test #10:

score: 10
Accepted
time: 4ms
memory: 1392kb

input:

1000
IbBJmdORPKZQEUANbGl is a duck, it is at OJplxaPZjvPj
BzokAqyWjUIVWu is a duck, it is at xxYRvKG...

output:

IbBJmdORPKZQEUANbGl is alive
BzokAqyWjUIVWu is alive
tLHbuTjOxzopobuOMg is alive
rLeadcccgsTAuIbpOGU...

result:

ok 1000 lines

Extra Test:

score: 0
Extra Test Passed