1 条题解

  • 0
    @ 2025-4-12 21:43:14

    C :

    #include<stdio.h>
    #define N 1000
    int main()
    {
    	int x[N],n,a,b,j,k,l=0,m=0;
    	scanf("%d",&n);
    	for(int i=1;i<=n+2;i++)
    	x[i]=0;
    	for(int j=1;j<=n;j++)
    	{
    		scanf("%d %d",&a,&b);
    		x[a] = b;
    	}
    	a=1;
    	while(x[a]!=0)
    	{
    		l++;
    		a=x[a];
    	}
    	a=2;
    	while(x[a]!=0)
    	{
    		m++;
    		a=x[a];
    	}
    	if(l==m)
    	printf("你是我的兄弟");
    	else if(l>m)
    	printf("你是我的长辈");
    	else printf("你是我的晚辈");
    	return 0;
    }
    

    C++ :

    #include<iostream>
    using namespace std;
    int main()
    {
    	int n,t1=1,t2=2,account1=0,account2=0;
    	cin>>n;
    	int*a=new int [n];
    	int*b=new int [n];
    	for(int i=0;i<n;i++)
    	{
    		cin>>a[i];
    		cin>>b[i];
    	}
    	for(int i=0;i<n;i++)
    	{
    		if(a[i]==t1)
    		{
    			t1=b[i];
    			account1++;
    		}
    		if(a[i]==t2)
    		{
    			t2=b[i];
    			account2++;
    		}
    	}
    	if(account1>account2)
    		cout<<"你是我的长辈"<<endl;
    	else if(account1==account2)
    		cout<<"你是我的兄弟"<<endl;
    	else
    		cout<<"你是我的晚辈"<<endl; 
    	delete a;
    	delete b;
    	return 0;
    }
    

    Pascal :

    program hujgf;
    var
      i,j,n,x,y,w2,w1,s1,s2:integer;
      a:array[1..20] of integer;
    begin
      while not eof do
      begin
      readln(n);
      w1:=1;
      w2:=2;
      s1:=0;
      s2:=0;
      for i:=1 to 20 do
      a[i]:=0;
      for i:=1 to n do
      begin
        readln(x,y);
        a[x]:=y;
      end;
      while w1<>0 do
      begin
        inc(s1);
        w1:=a[w1];
      end;
      while w2<>0 do
      begin
        inc(s2);
        w2:=a[w2];
      end;
        if s2>s1 then writeln('你是我的晚辈')
        else if s1>s2 then writeln('你是我的长辈')
             else writeln('你是我的兄弟');
      end;
    end.
    
    • 1

    【创新型】第6章:循环控制结构 谁大谁小

    信息

    ID
    1355
    时间
    1000ms
    内存
    128MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者