Notice
Recent Posts
Recent Comments
Link
반응형
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- SWEA
- mybatis
- 마이라이트
- 일본어학습지
- 프로그래머스
- 삼성소프트웨어아카데미
- 카카오
- 자료구조
- 코딩
- array
- 가벼운학습지후기
- 성인학습지
- 알고리즘
- 정렬
- 일본어공부
- 삼성
- javascript
- 스텍
- 코테준비
- 코딩테스트
- stack
- 자바스크립트
- js
- 백준
- 가벼운학습지
- 자바
- 일본어독학
- 인프런
- 코테
- java
Archives
- Today
- Total
개발에 AtoZ까지
[JAVA][D2] 1940. 가랏! RC카! 본문
반응형
문제
RC (Radio Control) 카의 이동거리를 계산하려고 한다.
입력으로 매 초마다 아래와 같은 command 가 정수로 주어진다.
0 : 현재 속도 유지.
1 : 가속
2 : 감속
위 command 중, 가속(1) 또는 감속(2) 의 경우 가속도의 값이 추가로 주어진다.
가속도의 단위는, m/s2 이며, 모두 양의 정수로 주어진다.
입력으로 주어진 N 개의 command 를 모두 수행했을 때, N 초 동안 이동한 거리를 계산하는 프로그램을 작성하라.
RC 카의 초기 속도는 0 m/s 이다.
[예제]
아래 예제 입력에서 정답은 3 이 된다.
입력 시간 RC 카의 속도 RC 카의 이동거리
1 2 1 sec 2 m/s 2 m
2 1 2 sec 1 m/s 3 m
[제약사항]
1. N은 2이상 30이하의 정수이다. (2 ≤ N ≤ 30)
2. 가속도의 값은 1 m/s2 혹은 2 m/s2 이다.
3. 현재 속도보다 감속할 속도가 더 클 경우, 속도는 0 m/s 가 된다.
[입력]
입력은 첫 줄에 총 테스트 케이스의 개수 T, 다음 줄부터 각 테스트 케이스가 주어진다.
테스트 케이스 첫 줄에는 Command 의 수 N이 주어지고, 둘째 줄부터, 매 줄마다 각각의 Command가 주어진다.
[출력]
테스트 케이스 t에 대한 결과는 “#t”을 찍고, 한 칸 띄고, 정답을 출력한다.
(t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.)
예시
풀이
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Solution {
public static void main(String[] args) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try {
int T = Integer.parseInt(br.readLine());
// 테스트케이스 반복
for (int i = 1; i <= T; i++) {
int N = Integer.parseInt(br.readLine());
int distance = 0;
int cSpeed = 0;
for (int j = 0; j < N; j++) {
String[] str = br.readLine().split(" ");
//가속할건지, 감속할건지
int gear = Integer.parseInt(str[0]);
//스피드
int speed=0;
//감속의경우
if (gear == 2) {
speed = Integer.parseInt(str[1]);
//감속읙 경우 현재 속도보다 더 감속할수없도록 if문 설정
if(cSpeed>=speed)
cSpeed -= speed;
else {
cSpeed=0;
}
} else if(gear==1){
speed = Integer.parseInt(str[1]);
cSpeed+=speed;
}
distance += cSpeed;
}
System.out.println("#"+i+" "+distance);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
반응형
'코딩테스트 준비 > SWEA' 카테고리의 다른 글
[JAVA][D2] 1285. 아름이의 돌 던지기 (0) | 2021.01.11 |
---|---|
[JAVA][D2] 1288. 새로운 불면증 치료법 (0) | 2021.01.11 |
[JAVA][D2] 1928. Base64 Decoder (0) | 2021.01.11 |
[JAVA][D2] 1945. 간단한 소인수분해 (0) | 2021.01.10 |
[JAVA][D2] 1946. 간단한 압축 풀기 (0) | 2021.01.10 |
[JAVA][D2] 1976. 시각 덧셈 (0) | 2021.01.10 |
[JAVA][D2] 1954. 달팽이 숫자 (0) | 2021.01.10 |
Comments