728x90
반응형

Kotlin 144

<백준> 문자열 게임 2

[백준] 20437번: 문자열 게임 2 첫 번째 문자열에서 3번에서 구한 문자열은 aqua, 4번에서 구한 문자열은 raquator이다. 두 번째 문자열에서는 어떤 문자가 5개 포함된 문자열을 찾을 수 없으므로 -1을 출력한다. www.acmicpc.net [깃허브] ForCodeKata/baekjoon 문제집/문자열 게임 2 at main · heesoo-park/ForCodeKata Contribute to heesoo-park/ForCodeKata development by creating an account on GitHub. github.com 시간복잡도를 계산했을 때 구상한 방법이 안 된다는 걸 알지만 그것말고는 방법이 떠오르지 않아서 일단 구현한 문제였다. 처음에는 2중 for문을 이용해서 ..

<백준> 컨베이어 벨트 위의 로봇(Gold 5)

[백준] 20055번: 컨베이어 벨트 위의 로봇 길이가 N인 컨베이어 벨트가 있고, 길이가 2N인 벨트가 이 컨베이어 벨트를 위아래로 감싸며 돌고 있다. 벨트는 길이 1 간격으로 2N개의 칸으로 나뉘어져 있으며, 각 칸에는 아래 그림과 같이 1부 www.acmicpc.net [깃허브] ForCodeKata/baekjoon 문제집/컨베이어 벨트 위의 로봇 at main · heesoo-park/ForCodeKata Contribute to heesoo-park/ForCodeKata development by creating an account on GitHub. github.com 진짜 문제를 이해하는게 어려웠던 문제였다... 진짜 계속 삽질을 하면서도 삽질인지 모른채 계속 시간을 부었다. 처음에 나는 문..

<백준> A와 B 2(Gold 5)

[백준] 12919번: A와 B 2 수빈이는 A와 B로만 이루어진 영어 단어 존재한다는 사실에 놀랐다. 대표적인 예로 AB (Abdominal의 약자), BAA (양의 울음 소리), AA (용암의 종류), ABBA (스웨덴 팝 그룹)이 있다. 이런 사실에 놀란 수빈 www.acmicpc.net [깃허브] ForCodeKata/baekjoon 문제집/A와 B 2 at main · heesoo-park/ForCodeKata Contribute to heesoo-park/ForCodeKata development by creating an account on GitHub. github.com 문제를 보자마자 이전에 풀어봤던 유형인 거를 깨달았다. (https://retry-thinksubox.tistory.c..

<백준> 1, 2, 3 더하기 4(Gold 5)

[백준] https://www.acmicpc.net/problem/15989 [깃허브] https://github.com/heesoo-park/ForCodeKata/tree/main/baekjoon%20%EB%AC%B8%EC%A0%9C%EC%A7%91/1,%202,%203%20%EB%8D%94%ED%95%98%EA%B8%B0%204 이 더하기 문제는 매번 볼 때마다 막히는 거 같다... 4번째 시리즈이길래 전에 다른 시리즈를 풀었나 확인해보니까 푼 것이 있었고 코드를 보는데 이해가 안 되더라...ㅎ 이번에는 잘 뚫기 위해 노력했는데 잘 기억하고 있어야겠다. 먼저 이런 문제는 어딘가 하나를 고정하는게 필요한 거 같다. 특히 이 문제는 1,2,3만을 사용할 수 있고 순서만 다른 수열은 같은 수열로 취급하기 ..

<백준> 달이 차오른다, 가자.(Gold 1)

[백준] https://www.acmicpc.net/problem/1194 [깃허브] https://github.com/heesoo-park/ForCodeKata/tree/main/baekjoon%20%EB%AC%B8%EC%A0%9C%EC%A7%91/%EB%8B%AC%EC%9D%B4%20%EC%B0%A8%EC%98%A4%EB%A5%B8%EB%8B%A4,%20%EA%B0%80%EC%9E%90. 최종 프로젝트가 마무리되고 드디어 다시 알고리즘 문제를 풀 여유가 생겼다. 물론 밀렸던 집안일 하랴... 이력서 준비하랴... 이것저것 하다보니 아침에 하려고 했던 일정이 망가져서 밤 늦게 하고 있지만 다시 손을 대서 할 수 있다는게 어디인가 싶다.(감사한 마음 뿐...) 그렇게 오늘 손을 댄 문제는 친구에게 추천받..

<프로그래머스> 가장 많이 받은 선물(Lv.1)

[깃허브] https://github.com/heesoo-park/ForCodeKata/tree/main/%EA%B0%80%EC%9E%A5%20%EB%A7%8E%EC%9D%B4%20%EB%B0%9B%EC%9D%80%20%EC%84%A0%EB%AC%BC [프로그래머스] https://school.programmers.co.kr/learn/courses/30/lessons/258712 오늘도 복습을 하려다가 조금 뭔가 그래서 오늘부터는 카카오 코딩테스트 기출문제를 풀어보려고 한다. 가장 최근인 2024 KAKAO WINTER INTERNSHIP의 가장 쉬운 문제를 잡았다. 그리고 문제를 보는데 무슨 길이가...!! 사실 문제가 길다는 건 더욱 자세히 설명해준다는 것으로도 해석되기 때문에 문제를 푸는 과정이 ..

<프로그래머스> 24.02.21 복습

[예상 대진표 - 이전에 풀었던 방법] https://retry-thinksubox.tistory.com/5 이전에 풀 때는 최대 라운드를 sqrt를 가지고 정해놓고 그 안에서 다음 번호와 마치는 종료 조건을 구하는 식으로 했었다. 하지만 이렇게 할 필요가 없었다는 걸 오늘 알게 되었다. 왜냐하면 무조건 서로 붙게 된다는 조건 때문에 만나게 되어있기 때문이다. 여기서 가장 쉽게 해결하기 위해 필요한 아이디어는 현재 자리에서 +1을 하고 2로 나누면 다음 라운드에서의 자리라는 것과 붙게 되는 경우에 앞의 과정을 한 값이 서로 같다는 것이다. 간단하게 말하면 서로의 값이 같아질 때까지 +1를 하고 /2를 하는 걸 반복하다가 같아지면 탈출하고 걸린 횟수를 결과로 보내주는 것이다. 이전에 짰던 코드랑 비교를 해..

<프로그래머스> 24.02.20 복습

[카펫 - 이전에 풀었던 방법] https://retry-thinksubox.tistory.com/4 요즘 문제들이 너무 풀리지 않아서 다시 이전에 풀었던 문제들을 좀더 리마인드하고 다른 사람들의 풀이도 참고하며 코틀린 문법을 더 활용하는 시간을 가지기 위해 복습 시간을 가지기로 했다. 그 첫번째는 카펫 문제다. 이전에는 전체에서 외부 테두리의 개수를 사각형 형태에 맞을 때 비교하는 식으로 완전탐색을 진행해서 값을 구했었다. 그 과정 속에서 for문과 if문이 사용되었고 이해하기 쉬운 흐름이었다. 하지만 분명 내부 사각형을 이용하는 방법이 있을 거라는 생각을 했었다. 물론 그 방법을 떠올리지 못 해서 위의 방법으로 제출을 하고 마무리를 했었지만... 이번에 그 방법을 사용해 풀어보기로 했다. 흐름은 비슷..

<백준> N-Queen(Gold 4)

[깃허브] https://github.com/heesoo-park/ForCodeKata/tree/main/baekjoon%20%EB%AC%B8%EC%A0%9C%EC%A7%91/N-Queen [백준] https://www.acmicpc.net/problem/9663 어떻게 하다보니 어제 풀었던 문제랑 동일한 문제를 풀게 되었다. 그런데 왜 이렇게 시간차이가 많이 나는지...? 이상했지만 보니까 백준은 14까지, 프로그래머스는 12까지였다. 거기에서 온 차이가 아닐까 싶다. 그래도 여기서 시간을 더 줄이기위해 노력한 부분은 분명히 있었다. 전에는 위쪽 대각선도 생각하고 처리를 했었는데 생각해보면 위에서부터 차례대로 내려오기 때문에 처리할 필요가 없었다. 이 부분 제거했고 첫번째 줄에 대한 처리도 재귀함수에 ..

<프로그래머스> N-Queen(Lv.2)

[깃허브] https://github.com/heesoo-park/ForCodeKata/tree/main/N-Queen [프로그래머스] https://school.programmers.co.kr/learn/courses/30/lessons/12952 설날 연휴를 다 보내고 푸는 첫번째 문제 경우의 수를 따지는 문제라서 약간 포기할까라는 마음이 초반에 들었었지만 억누르고 계속 도전하다보니 뚫렸다. 푸는 방식은 숫자도 그리 크지 않고 한줄 한줄 체크하면 될 거 같아서 DFS를 사용했다. 먼저 첫번째 줄이 정해지면 나머지는 또 경우의 수에 맞춰서 진행하면 되기 때문에 첫번째 줄을 순회하며 재귀함수를 돌렸다. 들어가면 공격범위를 모두 체크하고 공격범위에 들어가지 않는 다음 줄의 칸에 퀸을 배치하고 다음 스텝으로..

반응형