게임은 여러 라운드로 이루어지며, 한 라운드는 한 번 이상의 동작으로 이루어집니다. 게임 내내 페트야는 자신의 현재 점수를 기록합니다.
페트야는 매 라운드마다 점수 n을 가지고 시작합니다. 매 동작마다 난수 생성기는 음이 아닌 정수를 생성하며 페트야는 현재 점수에서 그 값을 뺄 것입니다. 결과가 음이 아니라면 페트야의 점수는 뺄셈의 결과 값으로 바뀌고, 그렇지 않다면 결과는 무시되며 점수는 바뀌지 않습니다. 예를 들어 현재 점수가 3인데 난수 생성기가 2를 생성했다면, 페트야가 뺄셈을 수행해 점수는 1이 될 것입니다. 하지만 난수 생성기가 5를 생성했다면, 뺄셈은 무시되며 점수는 3을 유지할 것입니다.
동작 이후 점수가 0이 된다면 라운드가 종료되며, 다음 동작이 수행되기 전 페트야의 점수는 n으로 돌아갑니다.
격리가 끝나고 한참 뒤, 페트야는 게임 도중 생성된 난수를 나타내는 k개의 정수가 적힌 종이 한 장을 우연히 발견했습니다. 페트야는 자신이 게임을 몇 라운드나 했으며 게임을 멈췄을 때 점수가 몇 점인지 알고 싶어합니다. 종이를 이용해 페트야가 찾고자 하는 값을 계산합시다.
입력
첫 줄에 두 정수가 주어집니다: 페트야가 수행한 동작의 수 k와, 매 라운드가 시작될 때의 점수 n입니다. (1 <= k <= 100 000, 1 <= n <= 10 ^ 8)
둘째 줄에 k개의 정수가 주어집니다 - 이는 난수 생성기가 생성한 값입니다. (0 <= ai <= 10 ^ 8)
출력
첫 줄에 완료된 라운드의 수를 나타내는 하나의 정수를 출력합니다.
둘째 줄에 게임이 종료되었을 때의 점수를 나타내는 하나의 정수를 출력합니다.
게임의 마지막 동작에서 라운드가 종료되었다면, 새로운 라운드가 시작되지 않았으므로 점수는 0입니다.
ez_code 1년 전 1
문제
격리로 지친 페트야는 난수 생성기를 이용한 1인용 게임을 고안했습니다.
게임은 여러 라운드로 이루어지며, 한 라운드는 한 번 이상의 동작으로 이루어집니다. 게임 내내 페트야는 자신의 현재 점수를 기록합니다.
페트야는 매 라운드마다 점수 n을 가지고 시작합니다. 매 동작마다 난수 생성기는 음이 아닌 정수를 생성하며 페트야는 현재 점수에서 그 값을 뺄 것입니다. 결과가 음이 아니라면 페트야의 점수는 뺄셈의 결과 값으로 바뀌고, 그렇지 않다면 결과는 무시되며 점수는 바뀌지 않습니다. 예를 들어 현재 점수가 3인데 난수 생성기가 2를 생성했다면, 페트야가 뺄셈을 수행해 점수는 1이 될 것입니다. 하지만 난수 생성기가 5를 생성했다면, 뺄셈은 무시되며 점수는 3을 유지할 것입니다.
동작 이후 점수가 0이 된다면 라운드가 종료되며, 다음 동작이 수행되기 전 페트야의 점수는 n으로 돌아갑니다.
격리가 끝나고 한참 뒤, 페트야는 게임 도중 생성된 난수를 나타내는 k개의 정수가 적힌 종이 한 장을 우연히 발견했습니다. 페트야는 자신이 게임을 몇 라운드나 했으며 게임을 멈췄을 때 점수가 몇 점인지 알고 싶어합니다. 종이를 이용해 페트야가 찾고자 하는 값을 계산합시다.
입력
첫 줄에 두 정수가 주어집니다: 페트야가 수행한 동작의 수 k와, 매 라운드가 시작될 때의 점수 n입니다. (1 <= k <= 100 000, 1 <= n <= 10 ^ 8)
둘째 줄에 k개의 정수가 주어집니다 - 이는 난수 생성기가 생성한 값입니다. (0 <= ai <= 10 ^ 8)
출력
첫 줄에 완료된 라운드의 수를 나타내는 하나의 정수를 출력합니다.
둘째 줄에 게임이 종료되었을 때의 점수를 나타내는 하나의 정수를 출력합니다.
게임의 마지막 동작에서 라운드가 종료되었다면, 새로운 라운드가 시작되지 않았으므로 점수는 0입니다.