(비 중량의 배열을 정렬하는 시뮬레이션을 ()지도를 사용하여) 어떤 친구 잘 생긴 사다리 인종 L1-020

 

참고 : 단순히 "친구의 원"을 설치할 수있는 친구, 그 친구가 자신의 원의 한 사람이 될 수 있습니다. 이 개인 나르시스트가 반복적으로 추가 친구의 자신의 원을 소유하지만,하지만 문제는 모든 것을 보장하기 위해 K친구를 통해 하나의 원은 적어도 두 개의 서로 다른 사람이있다.

어떤 친구 순차적으로 입력이 사람들에게 잘 생긴 출력. 상기 파티션 ID 사이의 공간, 마지막 행으로 여분의 공간이 없을 수 있습니다. 아무도 잘 생긴없는 경우, 출력 No one is handsome.

참고 : 같은 사람이 여러 번 조회 할 수 있지만, 출력 전용 한 번

샘플 입력 1 :

3

3 11111 22222 55555

2 33333 44444

4 55555 66666 99999 77777

8

55555 44444 10000 88888 22222 11111 23333 88888

출력 샘플 1 :

10000 88888 23333

샘플 입력 2 :

3

3 11111 22222 55555

2 33333 44444

4 55555 66666 99999 77777

4

55555 44444 22222 11111

출력 샘플 2 :

No one is handsome

하나는 단순히 표시되지 않고, 하나는 친구의 자신의 원이며,이있는 친구도 유의하십시오

이 테마는 맵을 사용뿐만 아니라 디엠 퍼시스의 비 정렬 된 배열을 포함한다 (종류의, 다음, 그것은 세트에 직접 또는 배열에 고유 한 작업입니다)

비는-종류의 배열 당신은 그것을 표시해야합니다.

코드 :

1 #INCLUDE <비트 / stdc ++ H.>
 2  사용  공간은 수 std;
3  CONST  INT maxn 1E5 + = 10 ;
4  CONST  INT INF = 0x3f3f3f3f ;
5  
6  문자열 NUM [maxn];
7  문자열 ANS [maxn];
8  
9 지도 < 문자열 , INT > m, F;
10  
(11)  INT의 주 ()
 12  {
 13      INT N;
14      는 scanf ( " %의 D ' , N);
15       ( INT I = 1. ; I <= N-; I ++ )
 16      {
 17.          INT의 X;
 18이다          는 scanf ( " %의 D " , 및 , X)
 . 19          문자열 CNT;
 20 인          위해 ( INT J = 1. , J <= X; ++ J )
 (21)는          {
 22는              CIN >> CNT;
 23은              IF (X == 1 && m [CNT] == 0 ) // 오직 하나, 또는이 경우에는 없음 
24               m [CNT] = INF]
 25             다른 m [CNT] ++ ;
 26이다          }
 27      }
 28      INT의 Q,
 29      는 scanf ( " %의 D ' , Q)
 (30)      INT K = 0 ;
 31이다      위해 ( INT I = 1. ; I <= Q; I ++) { // 재 배열 질의 
32          문자열 & lt; 화학식
 (33)는          CIN >> & lt; 화학식
 (34)는          IF (F [R & LT] == 0 ) {
 35              F [R & LT] = 1이다. ] // 태그 
36              NUM [K ++ =아르 자형;
37          }
 38      }
 39      INT를 L = 0 ;
40       ( INT 난 = 1 ; I <= K; I ++ ) {
 41          의 경우 (m [NUM [I]] == 0 || m [NUM [I]] == INF)
 42              ANS [++ L = NUM [I]; // 存到里ANS 
(43)      }
 (44)      의 경우 (L == 0 ) COUT << " 아무도 생긴 없다 " << ENDL;
45      다른 {
 46           ( INT I = 1나는 <L; I ++ )
 47              COUT << ANS [I] << "  " ;
48          COUT << ANS [L] << ENDL;
49      }
 50 }

 

추천

출처www.cnblogs.com/sweetlittlebaby/p/12443282.html