1. 배경지식 - 2. 문제해결 총 금액: X 물건의 종류 수: N 물건의 가격: a 물건의 개수: b 라고 가정하고 해당 문제의 조건을 식으로 나타내면 sum+= a * b는 X와 같을 때, Yes를 출력하고 아니면 No를 출력한다. 위 식을 물건의 종류 수인 N만큼 for문을 돌려주면 된다. 그 이후 삼항연산자로 true인지 false인지를 판별한다. 3. 구현력 package boj; import java.util.Scanner; public class b25304 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int X = 0; //총 금액 int N = 0; //물건의 종류 수 int a = 0; /..
1. 배경지식 - 2. 문제해결 테스트 케이스 T는 T만큼 반복하여 A, B를 입력받아 A,B를 더하여 출력한다. 3. 구현력 package boj; import java.util.Scanner; public class b10950 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int T = sc.nextInt(); for(int test_case=1; test_case
1. 배경지식 Math.max()메서드를 이용하면 숏코딩을 할 수 있다. 2. 문제해결 -주사위의 눈 3개가 모두 같을 때 -주사위의 눈 2개만 같을 때 -주사위의 눈이 모두 다를 때 3. 구현력 -주사위의 눈이 모두 다른경우 if(a != b && a != c && b != c) 주사위의 눈이 모두 다를때는 그 중 가장 큰값 X 100원의 상금을 받게되므로, 주사위의 눈 중 가장 큰 값을 찾아야한다. int max; if(a > b){ if(c > a){ max = c; } else{ max = a; } } //a > b finish // b > a else{ // c > b > a if(c > b){ max = c; } //b > (a,c) else{ max = b; } } -주사위의 눈이 2개만 같..
1. 배경지식 - 2. 문제해결 먼저 A(시)와 B(분)을 하나의 분으로 변환한 뒤, C를 더하고 그 값을 다시 시:분으로 변환해준다. 3. 구현력 tmpM = H * 60 + M + cookTime; //시와 분을 하나의 분으로 변환 tmpM을 다시 시간 분 형태로 변환 하기위해서는 tmpM을 60으로 나누면 변환한 시간을 얻을 수 있고, tmpM을 60으로 나머지 연산하면 변환한 분을 얻을 수 있다. ❗️여기서 주의할 점은 tmpM을 시로 변환하는 과정에서 H가 24이상이면 어떻게 해야하는지를 고려하지 않았다. 예를 들어 A와 B가 23 00이고, C가 120이면 25시 0분이 된다. 즉, H에도 24이상일 경우 다시 0부터 시작하도록 24를 나눈 나머지연산을 해줘야한다. H = (tmpM / 60)..
✏️문제풀이 h는 시간, m은 분을 뜻하는 변수이다. 일반적으로 계산할 때 분이 00분보다 내려가게되면, 시간은 1시간빼고 분은 60분으로 리셋되어 계산한다. 거기서 만약 시간이 0보다 작다면, 시간은 24시(00시) - 1 인 23으로 맞춰준다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int h = sc.nextInt(); int m = sc.nextInt(); if(m < 45) { h--; m = 60 - (45-m); if(h < 0) { h = 23; } System.out.println(h + " " + m); }..
![[백준] - 18108 1998년생인 내가 태국에선 2541년생?!](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FbJlBqL%2FbtsydTOEqUQ%2FAAAAAAAAAAAAAAAAAAAAAJrKJi2WWtxCJGzNZhZMTJvLypz1cxLu8H00IeXYfytJ%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DIR8Y4vUxNiofBW2mQcNmDGXPpOM%253D)
• 문제 태국의 불기를 우리나라에서 사용하는 서기 연도로 변환하는 프로그램을 작성하는 문제이다. • 풀이 서기연도(한국)를 구하기위해서는 입력받은 불기연도(태국)에서 불기연도와 서기연도의 차인 543을 뺄셈연산 해주면된다. 먼저 값을 입력받기위해 Scanner클래스를 import해주어야 하는데 import문을 보면 java.util.Scanner에서 Scanner대신 *로 표시되었는데 *의 의미는 util패키지에있는 모든 클래스를 import한다는 의미이다. java에서 import문은 프로그램 성능에 아무영향을 주지 않기때문에 util.*와 util.Scanner의 성능차이는 0이다. 불기연도를 y값에 입력받고, 출력문에서 y-543만큼 뺄셈해주면 서기연도를 구할 수 있다. import java.uti..
package SWEA; import java.util.Scanner; public class Solution1288 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int T = sc.nextInt(); for(int test_case = 1; test_case