2 solutions

  • 1
    @ 2025-5-17 13:41:54
    #include<bits/stdc++.h>
    using namespace std;
    const int N=110;
    string a[N],b[N];
    int main()
    {
    	int n;
    	cin>>n;
    	map<string,int> h;
    	for(int i=1;i<=n;i++)
    	{
    		cin>>a[i]>>b[i];
    		h[a[i]]++,h[b[i]]++;
    	}
    	for(int i=1;i<=n;i++)
    	{
    		bool st=false;//还没有选择
    		if(h[a[i]]==1) st=1; //姓没有冲突 
    		if(h[b[i]]==1) st=1; //名没有冲突 
    		if(a[i]==b[i]&&h[a[i]]==2) //自己的姓和名一样,和别人没有冲突 
    		{
    			st=1;
    		}
    		if(st==0)
    		{
    			cout<<"No";	
    			return 0;
    		} 
    	}
    	cout<<"Yes";
    	return 0;	
    } 
    
    • 0
      @ 2025-12-15 16:57:41
      #include<bits/stdc++.h>
      using namespace std;
      const int N=110;
      struct Stu
      {
      	string xing;
      	string ming;
      };
      Stu a[N];
      string s[N];
      int main()
      {
      	int n;
      	cin>>n;
      	for(int i=1;i<=n;i++)
      	{
      		cin>>a[i].xing;
      		cin>>a[i].ming;
      	}
      	bool b=1;
      	for(int i=1;i<=n;i++)
      	{
      		string t1,t2;
      		t1=a[i].xing;
      		t2=a[i].ming;
      		int c1=0,c2=0;
      		for(int j=1;j<=n;j++)
      		{
      			if(j!=i&&(t1==a[j].xing||t1==a[j].ming))
      			{
      				c1++;
      			}
      			if(j!=i&&(t2==a[j].xing||t2==a[j].ming))
      			{
      				c2++;
      			}
      		}
      		if(c1>=1&&c2>=1)
      		{
      			b=0;
      		}
      	}
      	if(b==1)
      	{
      		cout<<"Yes";
      	}
      	else
      	{
      		cout<<"No";
      	}
      	return 0;
      }
      
      • 1

      Information

      ID
      2438
      Time
      1000ms
      Memory
      256MiB
      Difficulty
      1
      Tags
      (None)
      # Submissions
      22
      Accepted
      7
      Uploaded By