Õhne vanaraamatupood

아직 제출이 없습니다시간 제한1초메모리 제한1023 MB

문제

Õhne vanaraamatupood는 특히 희귀하고 오래된 책을 인터넷으로 판매하는, 전 세계를 상대로 하는 스타트업이다. 이 포털에서 활동하는 판매자 대부분은 봇(로봇)으로, 서로에게서 책을 싸게 사들인 뒤 다른 사용자에게 더 비싸게 되파는 것을 노린다. 책이 워낙 희귀하다 보니, 판매자가 실제로는 가지고 있지 않은 책까지도 매물로 올라온다.

다음 알고리즘에 따라 동작하는 아주 단순한 판매 봇을 생각하자.

  • 어떤 책이 아직 한 번도 매물로 올라온 적이 없다면, 첫 번째 봇이 임의의 가격을 스스로 정한다. 이 날을 0일이라 하고, 이 봇의 번호를 1번이라 한다.
  • 각 봇은 일정한 간격으로(매 $I$일마다) 활성화된다. 활성화되면 포털에 올라와 있는 모든 매물(자기 자신의 매물 포함)의 평균 가격을 구하고, 여기에 자신의 마진(가산율) $M$을 적용하여, 즉 평균에 $1 + M$을 곱하여 새로운 매물 가격을 계산한다. 이때 계산은 전날이 끝난 시점의 판매자 가격들을 기준으로 한다.

같은 날에 활성화되는 봇들은 모두 같은 스냅숏, 곧 전날 종료 시점의 가격들을 기준으로 새 가격을 계산한다. 따라서 하루 안에서 이루어진 갱신끼리는 서로를 보지 못한다.

모든 가격은 포털에 1센트 단위로 게시되며, 계산 과정에서 생긴 센트의 소수 부분은 $0.5$센트 이상이면 올림한다.

어떤 가격도 1,000,000.00을 넘지 않는다고 가정해도 좋다.

한 권의 책에 대해, 주어진 날이 시작되는 시점에 위 봇들이 부르는 가격을 구하는 프로그램을 작성하라. (그 날에 일어나는 가격 변화는 반영하지 않는다.)

입력

첫째 줄에 세 수가 주어진다: 봇의 수 $N$ ($1 \le N \le 100$), 첫 번째 봇이 책에 매긴 가격 $P_0$ ($0.01 \le P_0 \le 9999.99$), 그리고 우리가 관심 있는 날의 번호 $T$ ($1 \le T \le 10000$).

이어지는 $N$개의 줄에는 각 봇의 정보가 주어진다: 첫 매물을 올리는 날 $S_i$ ($S_1 = 0$이고, 그 외에는 $1 \le S_i < T$), 매물 갱신 간격 $I_i$ ($1 \le I_i \le T$), 마진 $M_i$ ($0 < M_i < 1$, 소수점 아래 최대 5자리).

출력

$T$일의 아침에 각 봇이 이 책에 대해 부르는 가격을, 입력에 주어진 봇 순서대로 한 줄에 하나씩 출력한다. 모든 가격은 소수점 아래 정확히 두 자리로 출력한다.