시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
1 초 (추가 시간 없음) | 1024 MB (추가 메모리 없음) | 33 | 15 | 13 | 43.333% |
아멜과 니나는 알파벳 소문자와 숫자 $\mathbf{0}$-$\mathbf{9}$를 이용하여 만든 문자열을 가지고 점수 내기를 하려고 한다. 아멜은 가장 높은 점수를 얻을 수 있는 문자열을 만들고, 니나는 가장 낮은 점수를 얻을 수 있는 문자열을 만든다. 아멜과 니나가 만드는 문자열은 길이가 $1$ 이상이어야 한다.
어떤 문자열 $A$의 점수는,
을 더한 값이다. 각 list에 조건을 만족하는 문자열이 없다면 $0$점으로 간주하여 계산한다. 또한 내기는 각 list가 비어있는 상태로 시작한다.
내기의 재미를 위해 prefix list와 suffix list가 계속 바뀌기 때문에, 아멜과 니나는 매 순간 어떤 문자열을 만들어야 가장 유리할지 헷갈리기 시작했다.
아멜과 니나를 도와 아래와 같은 쿼리를 수행해주자.
< str X
: prefix list에 점수 $X$를 가지는 문자열 str
을 추가한다. 만일 str
이 이미 있었다면 점수를 $X$로 변경한다.> str X
: suffix list에 점수 $X$를 가지는 문자열 str
을 추가한다. 만일 str
이 이미 있었다면 점수를 $X$로 변경한다.+
: 아멜이 얻을 수 있는 최대 점수를 출력한다.-
: 니나가 얻을 수 있는 최소 점수를 출력한다.list의 모든 문자열은 항상 알파벳 소문자로만 구성되어 있지만, 아멜과 니나는 알파벳 소문자뿐만 아니라 숫자도 사용할 수 있음에 유의하자.
첫째 줄에 쿼리의 개수 $Q$가 주어진다. ($1\le Q \le 300\,000$)
둘째 줄부터 $Q$개의 줄에 걸쳐 쿼리가 한 줄에 하나씩 주어진다.
+
또는 -
쿼리가 적어도 하나 존재한다.+
와 -
쿼리에 대하여 결과를 한 줄에 하나씩 출력한다.
8 < abc 10 + - < ab -6 + - > c 7 +
10 0 4 -6 11
예제 출력의 점수를 얻을 수 있는 문자열의 예시는 각각 abc
, 111
, abcd
, ab123
, abc
이다.
University > 신촌지역 대학생 프로그래밍 대회 동아리 연합 > 2023 신촌지역 대학생 프로그래밍 대회 동아리 연합 겨울 대회 (SUAPC 2023 Winter) C번