Ordinal > 문제은행



실전대비 Level9

1801 : Ordinal

제한시간: 1000 ms    메모리제한: 128 MB
해결횟수: 14 회    시도횟수: 43 회   



전산과의 철기는 겨울학기 내내 학교에 보이질 않았다. 

알고보니 그는 신기한 기계를 설계하고 있었다. 

이 기계에 N명의 학생들의 점수를 넣으면 그 점수들을 정렬해서 k등의 점수가 몇 점인지를 알려준다.

 

이 기계를 뜯어보니 이 기계는 여러 개의 min/max 함수들만으로 이루어져 있었다. 

min/max 함수는 여러 개의 수를 넣으면 그 중에서 최소인 것과 최대인 것을 그 출력으로 내어놓는다.

 

따라서 이 기계의 구조를 아래와 같은 수식으로 나타낼 수 있을 것이다. 

m은 min, 즉 최소값 함수이고 M은 max, 즉 최대값 함수이다.

 

M(m(M(a,b),M(c,d)),m(a,b),m(c,d))

 

위와 같은 기계의 경우 네 변수 a, b, c, d로 어떤 점수가 주어지더라도 항상 2등의 점수를 얻을 수 있다. 

철기는 어떤 기계의 구조를 주고 k를 알려주지 않은 채 이를 문제로 내야겠다고 생각했다. k를 알아낼 수 있을까?

 

단, 입력될 수 있는 점수가 모두 다를 필요는 없다. 

이 경우 성적들을 비내림차순으로 나열했을 때 k번째의 수가 출력된다고 생각하면 된다.

 




첫 행에는 테스트 케이스의 수 T가 주어진다.

각 테스트 케이스의 유일한 행은 길이 1000 이하의 수식으로 구성된다. 이 수식은 위의 예에서 다룬 수식의 형태를 가지며 공백은 없다. 수식에 등장하는 변수의 수는 12가지 이하로 a부터 l까지의 범위의 소문자 알파벳이 해당된다.




테스트 케이스 하나당 한 행씩 순서대로 유일하게 결정한 k를 출력한다.
k가 유일하게 존재하지 않는다면 "Not unique"를 출력한다.



3 
m(a,l,b) 
M(m(M(a,b),M(c,d)),m(a,b),m(c,d)) 
m(M(a,b),M(c,d))
3 
2 
Not unique



HancomEducation E-mail : hancomc@hotmail.com, comkiwer@naver.com Tel : 031-388-0999 FAX : 031-388-0996 정올소개 이용약관 개인정보처리방침
경기도 안양시 동안구 호계동 1065-10 협성골드프라자 601호, 경기도 안양시 동안구 평촌대로 109 협성골드프라자 601호
Copyright@2010-2015 jungol. All right reserved.