BOJ749 [자바] 백준 23805 - 골뱅이 찍기 - 돌아간 ㄹ (boj java) 문제 : boj23805 규칙을 찾아서 구현해주면 된다. 규칙은 아래와 같다. 1. n줄에 걸쳐 3n개의 @, n개의 공백, n개의 @ 2. 3n줄에 걸쳐 n개의 @, n개의 공백, n개의 @, n개의 공백, n개의 @ 3. n줄에 걸쳐 n개의 @, n개의 공백, 3n개의 @ 코드 : github import java.io.BufferedReader; import java.io.InputStreamReader; public class Main { StringBuilder sb = new StringBuilder(); private void print(char c, int cnt) { while (cnt-->0) sb.append(c); } private void br() {sb.append('\n');}.. 2022. 7. 15. [자바] 백준 6581 - HTML (boj java) 문제 : boj6581 결국엔 문제에서 제시된대로 구현하면 되긴..하는데.. 좀 까다롭긴하다. 그래도 뭐 해설을 할 부분은 딱히 없는 것 같다. 문제의 조건대로 구현만 하면 되긴하니. 특히 주의할 점이라면 각 줄의 끝에 공백문자가 있으면 안된다. 즉, 'abc ' 이러면 안되고 'abc' 이래야 한다. 이것 때문에 좀 헤맸다. 코드 : github import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.StringTokenizer; public class Main { int idx = 0; StringBuilder sb = new StringBuilder(); pr.. 2022. 7. 14. [자바] 백준 23811 - 골뱅이 찍기 - ㅌ (boj java) 문제 : boj23811 규칙을 찾고 구현해보자. 위와 같이 A형태와 B 형태가 있고, A B A B A 형태로 출력하고 있다. A를 type=0, B를 type=1 이라고 해보자. type 0의 경우 n행에 걸쳐서 5n개의 골뱅이를 출력한다. type 1의 경우 n행에 걸쳐서 n개의 골뱅이를 출력한다. type에 따라 위의 규칙에 맞춰 출력해주는 함수를 구현한 후, type 0; type 1; type 0; type 1; type 0; 순서대로 출력을 해주면 된다! 코드 : github import java.io.BufferedReader; import java.io.InputStreamReader; public class Main { private void print(int n, StringBuild.. 2022. 7. 13. [자바] 백준 11648 - 지속 (boj java) 문제 : boj11648 n이 한자리 수가 될 때 까지, 각 자리수를 곱한 새로운 값을 구해 n에 넣어주면 된다. 각 자리수를 곱하는 부분은 이하 코드의 요 부분을 참고해보자. while (n!=0) { cur*=n%10; n/=10; } 코드 : github import java.io.BufferedReader; import java.io.InputStreamReader; public class Main { private void solution() throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(br.readLine()); int cnt =.. 2022. 7. 12. [자바] 백준 9288 - More Dice (boj java) 문제 : boj9288 'In each pair, the die values should be ordered from lowest to highest'와 'Only list unique dice combinations'에 따라 이하의 로직으로 확인하면 된다! for 1번 주사위를 1부터 6까지 증가시키면서 : for 2번 주사위를 1번 주사위의 현재 눈금 이상부터 6까지 증가키시면서 : 1번 주사위와 2번 주사위의 합이 입력으로 받은 합계인 경우 1번주사위, 2번주사위 순서로 출력한다.; 위와 같이 진행하면 문제의 조건을 지키면서 brute force로 모든 경우를 확인할 수 있다. 코드 : github import java.io.BufferedReader; import java.io.InputStrea.. 2022. 7. 11. [코틀린, 자바] 백준 25214 - 크림 파스타 (boj kotlin java) 문제 : boj25214 매번 최소값과 최대값을 갱신한다고 생각해보자. 이 때 최소값이 갱신된 경우가 문제인데, 애초에 최소값이 갱신됬다고 i를 해당 값으로 선택하면 선택할 수 있는 j는 자기 자신밖에 없다(i cur) min = cur else ans = Math.max(ans, cur-min) sb.append(ans).append(' ') } println(sb) } 코드(java) : github import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { private void solution() throws Exception { Buffered.. 2022. 7. 11. [코틀린, 자바] 백준 14651 - 걷다보니 신천역 삼 (Large) (boj kotlin java) 문제 : boj14651 우선 3의 배수를 판정하는 방법부터 알아보자. 이 경우 수 A의 모든 자리의 숫자의 합이 3의 배수라면 A도 3의배수이다(정수론). 그럼 이 문제는 N자리 숫자에 대해, N번의 선택을 거친 결과 모든 자리 수의 합이 3의 배수인 경우의 수를 찾는 문제인 셈이다. 물론 단순하게 brute force로 찾아보려 한다면 O(3^33333)이 필요하므로 불가능하다. DP로 생각해보자. dp[a][b]를 a번째 자리수까지 더했을 때의 합을 3으로 나눈 나머지가 b인 경우의 수로 정해보자. 그럼 a가 5일때까지만 살펴보자. (N=5) 1. 우선 a=1 일 경우 다음과 같이 될 것이다. 또 이렇게 두면 '0으로 시작하는 수는 만들 수 없는 수 이삼' 부분을 별도로 처리하지 않아도 되기 때문에.. 2022. 7. 10. [코틀린, 자바] BOJ 15645 - 내려가기 2 (boj kotlin java) 문제 : boj15645 ps. 코틀린의 경우 대강 인터넷 검색해서 문법을 익혔으므로 아직 늅늅이 상태여서 많이 어색하게 짰다. 이 문제의 경우 dp로 풀면 쉽게 풀린다. 알아야 하는 정보는 바로 직전 3칸의 합계 뿐이다(시작할때는 당연히 셋 다 0이라고 치면 된다.). N개의 줄을 입력받으면서, 매번 해당 칸으로 올 수 있는 값 중 최대와 최소값을 갱신 후에 현재 줄에서 입력받은 값을 더해주면 된다. dp[a][b]가 a라인까지 입력받았을 때 b번째(0,1,2로 3개) 칸까지의 최대합계라고 해보자. 그렇다면 dp[x][0] = max(dp[x-1][0], dp[x-1][1]) + 입력받은 0번째 값 dp[x][1] = max(dp[x-1][0], dp[x-1][1], dp[x-1][2]) + 입력받은 .. 2022. 7. 9. [자바] 백준 10409 - 서버 (boj java) 문제 : boj10409 n번동안 정수를 입력받으면서, 남은 t에 입력받은 정수를 뺀 값이 양수인 동안 cnt라는 값을 증가시켜준고 t를 입력받은만큼 빼준다. 그리고 n개를 모두 입력받거나, 남은 t가 음수가 된 경우 cnt를 출력해주면 된다! 코드 : github import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { private void solution() throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokeniz.. 2022. 7. 8. [자바] 백준 9295 - 주사위 (boj java) 문제 : boj9295 1. 테스트 케이스 수를 입력받고, 반복문으로 테스트케이스 수만큼 반복하면서 현재 테스트 케이스 몇 번 인지 알 수 있어야 한다. 2. 두 개의 숫자를 입력받아 합을 구할 수 있어야 한다. 위 두가지를 할 수 있다면 풀 수 있다! 코드 : github import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { private void solution() throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = .. 2022. 7. 7. 이전 1 ··· 37 38 39 40 41 42 43 ··· 75 다음