✅ 문제 영수증에 적힌, 구매한 각 물건의 가격 & 개수구매한 물건들의 총 금액을 보고, 구매한 물건의 가격과 개수로 계산한 총 금액이 영수증에 적힌 총 금액과 일치하는지 검사해보자. 📥 입력 첫째 줄에는 영수증에 적힌 총 금액 X가 주어진다. 둘째 줄에는 영수증에 적힌 구매한 물건의 종류의 수 N이 주어진다. 이후 N개의 줄에는 각 물건의 가격 a와 개수 b가 공백을 사이에 두고 주어진다. 📥 출력 구매한 물건의 가격과 개수로 계산한 총 금액이 영수증에 적힌 총 금액과 일치하면 Yes를 출력한다. 일치하지 않는다면 No를 출력한다. 💡 풀이 변수 int x와 n을 선언하고 구매한 물건의 총 합과 종류 수를 입력 받는다. 그리고 합을 누적해줄 정수형 변수 int hap을 선언해주었다. 반복문 fo..
✅ 문제 n이 주어졌을 때, 1부터 n까지 합을 구하는 프로그램을 작성하시오. 📥 입력 첫째 줄에 n (1 ≤ n ≤ 10,000)이 주어진다. 📥 출력 1부터 n까지 합을 출력한다. 💡 풀이 너무 쉬운 문제. 입력도구로 n을 입력받은 뒤, 합을 누적할 int형 변수 하나를 선언해 준다. 반복문 for문을 돌려 1부터 n까지 숫자를 변수에 누적해 준 뒤, 출력하면 된다. Scanner로 입력받을 수도 있고 BufferedReader로 입력 받을 수도 있다. ✅ 1. Scanner 로 입력받는 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(S..
✅ 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 📥 입력 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) 📥 출력 각 테스트 케이스마다 A+B를 출력한다. 💡 풀이 ✅ 입력도구 Scanner package Baekjoon_test; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int T = sc.nextInt(); int a; int b; for (int i = 0; i < T; i..
✅ 문제 N을 입력받은 뒤, 구구단 N단을 출력하는 프로그램 작성하기 📥 입력 첫째 줄에 N이 주어진다. N은 1보다 크거나 같고, 9보다 작거나 같다. 📥 출력 출력 형식과 같게 N*1부터 N*9까지 출력한다. 💡 풀이 BufferedReader는 내부적으로 버퍼를 사용하여 여러 바이트를 한번에 읽어오기 때문에 입출력 성능이 Scanner에 비해 입출력 성능이 좋습니다. 작은 입력의 경우에는 체감이 안되지만 대량의 데이터를 처리하는 상황이나 반복문으로 여러 줄을 입력 받는 경우 등은 BufferedReader 의 성능이 월등히 좋습니다. 따라서 적은 입력은 Scanner 를 대량의 데이터입력 또는 파일을 읽어올때는 BufferedReader를 사용하는 것이 효과적입니다. ▼ [자바] Buffer..
✅ 문제 3개 주사위의 나온 눈이 주어질 때, 상금을 계산하는 프로그램 작성하기. 📥 입력 첫째 줄에 3개의 눈이 빈칸을 사이에 두고 각각 주어진다. 📥 출력 첫째 줄에 게임의 상금을 출력 한다. 💡 풀이 간단한 문제로, 문제에 주어진 3가지 조건을 그대로 수식으로 옮겨 쓰면 된다. 1. 입력값 세개가 같으면 10000 + 같은 값 * 1000 2. 두 개가 같으면 1000 + 같은 값 * 100 3. 다 다르면 가장 큰 값 * 100 ✅ 코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a, b, c; a = sc..
✅ 문제훈제오리구이를 시작하는 시각과 오븐구이를 하는 데 필요한 시간이 분단위로 주어졌을 때, 오븐구이가 끝나는 시각을 계산하는 프로그램 만들기 📥 입력 첫째 줄에는 현재 시각이 나온다. 현재 시각은 시 A (0 ≤ A ≤ 23) 와 분 B (0 ≤ B ≤ 59)가 정수로 빈칸을 사이에 두고 순서대로 주어진다. 두 번째 줄에는 요리하는 데 필요한 시간 C (0 ≤ C ≤ 1,000)가 분 단위로 주어진다. 📥 출력 첫째 줄에 종료되는 시각의 시와 분을 공백을 사이에 두고 출력한다. (단, 시는 0부터 23까지의 정수, 분은 0부터 59까지의 정수이다. 디지털 시계는 23시 59분에서 1분이 지나면 0시 0분이 된다.) 💡 풀이 시계 돌리기 문제. 현재 시간에 오븐구이 만드는데 필요한 시간을 더해서..
✅ 문제 입력한 시간 기준으로 45분 전은 몇시 몇 분인지 출력하는 프로그램 짜기 📥 입력 첫째 줄에 두 정수 H와 M이 주어진다. (0 ≤ H ≤ 23, 0 ≤ M ≤ 59) 그리고 이것은 현재 상근이가 설정한 알람 시간 H시 M분을 의미한다. 입력 시간은 24시간 표현을 사용한다. 24시간 표현에서 하루의 시작은 0:0(자정)이고, 끝은 23:59(다음날 자정 1분 전)이다. 시간을 나타낼 때, 불필요한 0은 사용하지 않는다. 📥 출력 첫째 줄에 상근이가 창영이의 방법을 사용할 때, 설정해야 하는 알람 시간을 출력한다. 💡 풀이 Scanner 로 입력받아서 연산하는 법과 BufferedReader 로 입력받아서 연산하는 방법 두 가지로 문제를 해결하였다. 알고리즘 접근법 1. 입력받..
✅ 문제 흔한 수학 문제 중 하나는 주어진 점이 어느 사분면에 속하는지 알아내는 것이다. 사분면은 아래 그림처럼 1부터 4까지 번호를 갖는다. "Quadrant n"은 "제n사분면"이라는 뜻이다. 예를 들어, 좌표가 (12, 5)인 점 A는 x좌표와 y좌표가 모두 양수이므로 제1사분면에 속한다. 점 B는 x좌표가 음수이고 y좌표가 양수이므로 제2사분면에 속한다. 점의 좌표를 입력받아 그 점이 어느 사분면에 속하는지 알아내는 프로그램을 작성하시오. 단, x좌표와 y좌표는 모두 양수나 음수라고 가정한다. 조건문과 비교연산자를 이해하기 위한 문제 📥 입력 첫 줄에는 정수 x가 주어진다. (−1000 ≤ x ≤ 1000; x ≠ 0) 다음 줄에는 정수 y가 주어진다. (−1000 ≤ y ≤ 1000; ..