PS834 [코틀린, 자바] 백준 2273 - 줄 서기 (boj kotlin java) 문제 : boj2273 1. 알아야 하는 것 총 5명이 있다고 가정하고 내 앞에 서야 한다고 확정된 학생이 2명이고, 내 뒤에 서야 한다고 확정된 학생이 1명이라고 해보자. 이 정보를 가지고 '각 학생이 설 수 있는 위치의 범위'를 알 수 있을까? 내 앞에 최소 2명은 있어야 하므로 난 무조건 3번째 자리 이상으로 서야 한다. 또한 내 뒤에 반드시 한 명은 있어야 하므로 4번째 이하의 자리에 서야만 한다(5-1=4). 따라서 '설 수 있는 위치의 범위'는 '3 4'가 된다. 즉, 자신의 앞이라고 확정된 인원이 X명, 자신의 뒤라고 확정된 인원이 Y명, 총 N명이라면 범위는 'X+1 N-Y'가 됨을 알 수 있다. 그럼 다음의 경우를 생각해보자. 3 2 1 2 2 3 위의 경우 3의 앞에 2가 서고, 2의 .. 2022. 7. 19. [코틀린, 자바] 백준 9723 - Right Triangle (boj kotlin java) 문제 : boj9723 코틀린이랑 자바랑 둘 다 짜는 이유는 우선 코틀린으로 짜보고 -> 자바로 짠 후에 -> 자바를 코틀린으로 변경해서 쓸만한거 줍줍하기 위해서이다. 코틀린 익히기에 상당히 괜찮은 것 같다. 아무튼 문제는 직각 삼각형을 찾으면 된다. 즉, 3개의 변을 입력으로 받은 후에 가장 긴 변의 제곱이 나머지 두 변의 제곱의 합이 되는지 확인하면 된다. 그렇게 된다면 YES, 그렇지 않다면 NO를 출력해주면 된다. 코드(kotlin) : github import java.io.BufferedReader import java.io.InputStreamReader import java.util.* fun main() = with(BufferedReader(InputStreamReader(System... 2022. 7. 18. [자바] 백준 23812 - 골뱅이 찍기 - 돌아간 ㅍ (boj java) 문제 : boj23812 규칙을 찾고 구현해보자! @가 가득찬 경우('@@@@@')를 type 0, 좌측과 우측에 일부가 있는 경우('@ @')를 type 1이라고 해보자. type 0의 경우 n행에 걸쳐서 5n개의 골뱅이를 출력한다. type 1의 경우 n행에 걸쳐서 n개의 골뱅이 - 3n개의 공백 - n개의 골뱅이를 출력한다. type에 따라 위의 규칙에 맞춰 출력해주는 함수를 구현한 후, type 1; type 0; type 1; type 0; type 1; 순서대로 출력을 해주면 된다! 코드 : github import java.io.BufferedReader; import java.io.InputStreamReader; public class Main { private void print(int.. 2022. 7. 17. [자바] 백준 23810 - 골뱅이 찍기 - 뒤집힌 ㅋ (boj java) 문제 : boj23810 규칙을 찾고 구현해보자! @가 가득찬 경우를 type 0, 좌측에 일부분만 @가 있는 경우를 type 1이라고 해보자. type 0의 경우 n행에 걸쳐서 5n개의 골뱅이를 출력한다. type 1의 경우 n행에 걸쳐서 n개의 골뱅이를 출력한다. type에 따라 위의 규칙에 맞춰 출력해주는 함수를 구현한 후, type 0; type 1; type 0; type 1; type 1; 순서대로 출력을 해주면 된다! 코드 : github import java.io.BufferedReader; import java.io.InputStreamReader; public class Main { private void print(int n, StringBuilder sb, int type) { fo.. 2022. 7. 16. [자바] 백준 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. [ABC259] D - Circumferences (AtCoder Beginner Contest 259 in Java) 문제 : abc259_d 내 경우엔 그래프로 변경해서 풀었다. 우선 ArrayList의 idx를 기준으로 0번에 s, 1번에 t를 둔다. 이후 N개의 원을 입력받으면서 s와 t를 포함해서 모든 원의 쌍들에 대해 서로 인접해 있다면 양방향 간선을 연결한다(코드의 edgeChk, O(3000^2)). 단, s와 t의 경우엔 외곽선에 겹칠 경우에만 겹친다고 판단하고 간선을 연결한다(코드의 circumferenceChk). 예를들어 이하의 입력을 보자. 4 0 -2 3 3 0 0 2 2 0 2 2 3 1 -3 3 3 이에 대한 이미지와 각 idx는 다음과 같다. 그리고 간선정보는 다음과 같다. (예를들어 1행 4열의 v는 idx 1과 idx 4가 인접함을 뜻한다.) 그럼 이제 이 문제는 N+2개의 정점이 있는 .. 2022. 7. 11. [ABC259] C - XX to XXX (AtCoder Beginner Contest 259 in Java) 문제 : abc259_c 내 경우엔 String을 다음과 같이 압축시켜서 판단했다. abbaac => a1 b2 a2 c1 abbbbaaac => a1 b4 a3 c1 위와 같이 압축시킬 경우, 다음과 같이 판단할 수 있다. 1. 압축시킨 갯수가 다를 경우 No (예를들어 a1 b2 c2 vs a1 b2 였다면 3개와 2개로 비교해볼 것도 없이 No 이다.) 2. 압축시킨 부분에서 문자 부분이 서로 다른 경우 No (예를들어 a1 b1 c1 vs a1 d1 c1) 3. 압축시킨 각 부분에서 숫자가 S를 압축시킨쪽이 더 큰 경우 No (예를들어 a2 vs a1) 4. 압축시킨 각 부분에서 숫자가 서로 다른데, S가 1인 경우 No (예를들어 a1 vs a2) 5. 이외의 경우 Yes 코드 : github .. 2022. 7. 11. 이전 1 ··· 40 41 42 43 44 45 46 ··· 84 다음