728x90
난이도 : 브론즈3
풀이일 : 2401033
https://www.acmicpc.net/problem/1267
링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐
풀이 코드
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
int[] array = new int[N];
int M = 0;
int Y = 0;
StringTokenizer st = new StringTokenizer(br.readLine());
for (int i = 0; i < N; i++) {
array[i] = Integer.parseInt(st.nextToken());
}
for (int i = 0; i < N; i++) {
Y += (array[i]/30 + 1) * 10;
M += (array[i]/60 + 1) * 15;
}
if (Y < M) {
System.out.println("Y "+Y);
}
else if (M < Y) {
System.out.println("M "+M);
}
else {
System.out.println("Y M "+M);
}
}
}
풀이
- int Y, M : 영식 요금제와 민식 요금제로 계산한 동호의 핸드폰 요금
- array : 동호의 통화 건 수만큼 각 통화시간을 담을 배열
- 배열을 순회하며 각 요소에 대해 영식 요금제, 민식 요금제 가격을 더해준다.
- 배열 순회가 끝나면 조건문으로 비교 후 결과를 출력한다.
느낀점
- 며칠 급한 프로젝트를 하느라 알고리즘을 안했더니 다시 입력 받기부터 버벅인다. 꾸준하게 풀어야지.
- 기초 문제를 이전에 배운 입력 방법들을 잊지 않으려고 괜히 복잡하게 입력받아서 풀게된 느낌이다.
- 급하게 풀었더니 나누어 떨어지는 경우를 삼항 연산자로 돈이 덜 들게 조건을 달아서 한 번 틀렸다. 시간 좀 넉넉하게 두고 풀이를 시작하자.
'알고리즘 > 🥉 브론즈' 카테고리의 다른 글
백준 2506 점수계산 자바 풀이 (1) | 2024.01.08 |
---|---|
백준 1547 공 자바 풀이 (1) | 2024.01.07 |
백준 2083 럭비 클럽 자바 풀이 (0) | 2023.12.20 |
백준 1076 저항 자바 풀이 (0) | 2023.12.14 |
백준 1598 꼬리를 무는 숫자 나열 자바 풀이 (0) | 2023.12.13 |