5 명의 다이빙 고수 가 10 미터 플랫폼 다이빙 결승전 에 참가 하 였 는데, 어떤 사람 은 5 명 에 게 실력 에 따라 경기 결 과 를 프로 그래 밍 하여 경기 결과 의 실제 순 위 를 풀 게 하 였 다.

제목 설명:
5. 다이빙 고 수 를 위해 10 미터 플랫폼 다이빙 결승전 에 참가 하기 위해 5 명 에 게 실력 에 따라 경기 결 과 를 예측 하 라 고 했다.
A 선 수 는 B 가 두 번 째, 내 가 세 번 째 라 고 말 했다.
B 선 수 는 내 가 두 번 째, E 가 네 번 째 라 고 말 했다.
C 선 수 는 내 가 1 등, D 가 4 등 이 라 고 말 했다.
D 선 수 는 C 마지막, 내 가 세 번 째 라 고 말 했다.
E 선 수 는 내 가 4 등, A 등 이 라 고 말 했다.
결승전 이 발 표 된 후, 모든 선수 들 의 예측 은 절반 만 맞 추고, 프로 그래 밍 은 경기 결과 의 실제 순 위 를 풀 었 다.
코드:
#include <iostream>
using namespace std;
int  main()
{
char rank[6];
int a,b,c,d,e;
int as,bs,cs,ds,es;
memset(rank,0,sizeof(rank));
for(a=1;a<=5;a++)
{ for(b=1;b<=5;b++)
   {
   if(a==b) continue;
   for(c=1;c<=5;c++)
     {
      if(a==c||b==c) continue;
      for(d=1;d<=5;d++)
       {
       if(a==d||b==d||c==d) continue;
       e=15-a-b-c-d;
       as=(b==2)+(a==3);
       bs=(b==2)+(e==4);
       cs=(c==1)+(d==2);
       ds=(c==5)+(d==3);
       es=(e==4)+(a==1);
       if(as==1&&bs==1&&cs==1&&ds==1&&es==1)
       {
         rank[a]='a';
         rank[b]='b';
         rank[c]='c';
         rank[d]='d';
         rank[e]='e';
         for(int i=1;i<=5;i++)
         {
         cout<<"rank"<<i<<":  "<<rank[i]<<endl;
         }
       }
       }
       
     }
   }
}
       
return 0;       
}

좋은 웹페이지 즐겨찾기