RiseOJ는 solved.ac와 제휴 관계가 없습니다. 티어 아이콘 © solved.ac. solved.ac
포럼
R01553

신호등 건너기

Bronze IV 브론즈 IV
난이도
2s
시간 제한
256MB
메모리 제한
0
맞았습니다!!
2
제출 수
0.0%
정답률
레이팅

의견: 0

설명

어떤 횡단보도의 보행자 신호등은 처음 \(G\)초 동안 초록불이 켜진 뒤 \(R\)초 동안 빨간불이 켜지고, 다시 \(G\)초 동안 초록불, \(R\)초 동안 빨간불을 무한히 반복한다. 즉 한 주기의 길이는 \(G + R\)초이며, 시각 \(0\)초에 첫 초록불이 켜지기 시작한다.

초록불이 켜져 있는 동안(\([0, G)\), \([G+R, 2G+R)\), \(\dots\))에는 길을 건널 수 있지만, 빨간불일 때는 건널 수 없고 다음 초록불이 켜질 때까지 기다려야 한다.

당신은 시각 \(T\)초에 횡단보도에 도착했다. 도착한 그 순간에 초록불이라면 기다리지 않고 바로 건널 수 있고, 빨간불이라면 다음 초록불이 켜질 때까지 몇 초를 기다려야 하는지 구하라.

제약

\(1 \le G \le 10^{9}\)

\(1 \le R \le 10^{9}\)

\(0 \le T \le 2 \times 10^{9}\)

입력 형식

첫째 줄에 세 정수 \(G\), \(R\), \(T\) 가 공백으로 구분되어 주어진다.

출력 형식

도착한 순간에 초록불이면 \(0\)을, 빨간불이면 다음 초록불이 켜질 때까지 기다려야 하는 시간(초)을 출력한다.

예제 1
입력
5 3 2
출력
0
설명

주기는 \(G+R = 8\)초이다. \(T = 2\)\(8\)로 나눈 나머지는 \(2\)이고, \(2 < G = 5\) 이므로 지금은 초록불이다. 따라서 기다릴 필요 없이 바로 건널 수 있어 \(0\)을 출력한다.

예제 2
입력
5 3 6
출력
2
설명

주기는 \(8\)초이고 \(T = 6\)\(8\)로 나눈 나머지는 \(6\)이다. \(6 \ge G = 5\) 이므로 빨간불이다. 다음 초록불은 주기의 끝인 \(8\)초에 시작하므로 \(8 - 6 = 2\)초를 기다려야 한다.

문제 정보

riseoj 작성

출처 Original

평가 및 의견

신호등 건너기

개요
출제자 난이도 Bronze IV 브론즈 IV 의견 0 / 50 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

신호등 건너기

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8