백준30 [BOJ] 1743. 음식물 피하기 (Java) 문제 링크 / level: Silver I https://www.acmicpc.net/problem/1743 1743번: 음식물 피하기 문제 코레스코 콘도미니엄 8층은 학생들이 3끼의 식사를 해결하는 공간이다. 그러나 몇몇 비양심적인 학생들의 만행으로 음식물이 통로 중간 중간에 떨어져 있다. 이러한 음식물들은 근처에 있는 것끼리 뭉치게 돼서 큰 음식물 쓰레기가 된다. 이 문제를 출제한 선생님은 개인적으로 이러한 음식물을 실내화에 묻히는 것을 정말 진정으로 싫어한다. 참고로 우리가 구해야 할 답은 이 문제를 낸 조교를 맞추는 것이 아니다. 통로에 떨어진 음식물을 피해가기란 쉬운 일이 아 www.acmicpc.net 내가 생각한 풀이 오래간만에 BFS 문제, 특히 flood fill 문제를 보게 되었다. 반.. 2020. 4. 19. [BOJ] 2193. 이친수 (Java) 문제 링크 / level: Silver III https://www.acmicpc.net/problem/2193 2193번: 이친수 0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다. 이친수는 0으로 시작하지 않는다. 이친수에서는 1이 두 번 연속으로 나타나지 않는다. 즉, 11을 부분 문자열로 갖지 않는다. 예를 들면 1, 10, 100, 101, 1000, 1001 등이 이친수가 된다. 하지만 0010101이나 101101은 각각 1, 2번 규칙에 위배되 www.acmicpc.net 내가 생각한 풀이 동적 계획법(DP) 문제를 하나만 더 풀어보자 싶어서 건드린 문제. 이것도.. 2020. 4. 19. [BOJ] 1463. 1로 만들기 (Java) 문제 링크 / level: Silver III https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 내가 생각한 풀이 어제부로 동적 계획법(DP)의 세계에 발을 들이게 되었다. 이론은 공부했는데, 실제 문제를 풀어봐야할 것 같아서 초고수 형님들의 추천 문제부터 풀어보았다. 그 첫 번째 문제가 바로 이것! 동적 계획법은 쉽게 말해서 큰 것을 잘게 쪼개서 풀긴 푸는데, 앞에서 구한 값을 이용해서 내가 최종적으로 원하는 값을 구해내는 기법이다. 대표적인 예제는 피보나치 수열이 있다. 지금까지 피보나치 수열을 구할 때는 재귀함수로만 풀 줄 알았지....인 줄 알았으나 알.. 2020. 4. 17. [BOJ] 1913. 달팽이 (Java) 문제 링크 / level: Silver V https://www.acmicpc.net/problem/1913 1913번: 달팽이 N개의 줄에 걸쳐 표를 출력한다. 각 줄에 N개의 자연수를 한 칸씩 띄어서 출력하면 되며, 자릿수를 맞출 필요가 없다. N+1번째 줄에는 입력받은 자연수의 좌표를 나타내는 두 정수를 한 칸 띄어서 출력한다. www.acmicpc.net 내가 생각한 풀이 예전에 SWEA의 D2 레벨에서 비슷한 유형의 문제를 풀었던 적이 있다. 그래서 오래간만에 복습 좀 할겸 BOJ에 있는 문제를 하나 풀어봤는데 꽤 헤매서 당황스러웠다. 디버깅까지 해보는 초유의 사태 발생...😥 문제는 심플하다. 입력값으로 N이 주어지면 N^2 사이즈의 이차원 배열을 하나 만들고 그 안을 1부터 N^2까지의 수로.. 2020. 4. 16. [BOJ] 10757. 큰 수 A+B (Java) 문제 링크 / level: Bronze V https://www.acmicpc.net/problem/10757 10757번: 큰 수 A+B 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 내가 생각한 풀이 피보나치 수 시리즈 중 [10826. 피보나치 수 4] 문제를 풀어보려고 했는데, 숫자의 범위가 long type으로 커버가 안 될만큼 커졌다. 그래서 도저히 이 문제에 어떻게 접근해야 하는지조차 감이 잡히질 않아서 질문 검색을 통해 이런 저런 의견을 읽어보던 중, 누군가가 바로 이 문제(10757. 큰 수 A+B)는 풀어보았느냐- 이 문제부터 풀어봐라-라고 해서 도전해봤다. 이런건 남의 말 참 잘 듣쥬?😎 문제는 굉장히 단순하다. 그냥 inpu.. 2020. 4. 16. [BOJ] 10870. 피보나치 수 5 (Java) 문제 링크 / level: Bronze II https://www.acmicpc.net/problem/10870 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n>=2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 www.acmicpc.net 내가 생각한 풀이 이번에는 input의 범위가 굉장히 줄어들었다. n의 범위가 2.. 2020. 4. 7. [BOJ] 2748. 피보나치 수 2 (Java) 문제 링크 / level: Silver V https://www.acmicpc.net/problem/2748 2748번: 피보나치 수 2 문제 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n>=2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 www.acmicpc.net 내가 생각한 풀이 앞에서 [2747.피보나치 수] 문제를 풀어보았다. https://mi.. 2020. 4. 7. [BOJ] 2747. 피보나치 수 (Java) 문제 링크 / level: Bronze III https://www.acmicpc.net/problem/2747 2747번: 피보나치 수 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n>=2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 www.acmicpc.net 내가 생각한 풀이 사실 나는 다른 문제를 풀고 싶었지만, 그 문제를 내 힘으로 풀기 위.. 2020. 4. 7. [BOJ] 16430. 제리와 톰 (Java) 문제 링크 / level: Bronze V https://www.acmicpc.net/problem/16430 16430번: 제리와 톰 첫 번째 줄에 두 정수 A, B (1 ≤ A 2020. 4. 6. 이전 1 2 3 4 다음