오늘부터 코테를 준비하면서 블로그에 정리하고자한다! 코테를 따로 공부해본 적이 없어서 문제를 풀면서 배워나가려고 한다. 오늘 풀 문제는 더 맵게라는 문제인데 프로그래머스에서 뭔가 좋은 문제가 없을까 찾다가 제목이 마음에 들어서 골랐다. 나는 매운 걸 좋아하기 때문에
블로그에서 풀어볼 두번 째 알고리즘 문제는 기능개발이다!왜 두번째냐면 며칠 전에 '더 맵게'라는 문제도 풀었었는데 임시저장 글이 날아가버렸다ㅠㅠ그건 나중에 리뷰하도록 하고 이 문제 부터 풀어보도록 하겠다.최종적으로 해야할 일 : 각 배포마다 몇 개의 기능이 배포되는 지
이번에 풀어볼 문제는 메뉴 리뉴얼이라는 문제이다. 문제 문제를 꼼꼼히 읽자..
오늘 풀 문제는 골드바흐의 추측이다. 풀이 과정 우선 이 문제를 보고 제일 먼저 든 생각은 그냥 1부터 n까지 중에서 소수를 찾아서 리스트로 만들고 그 중에서 조합을 짜서 합이 n이 되는 걸 찾은 다음에 그 두 수의 차이가 제일 적은 걸 출력하면 되지않나? 해서 그렇
이번에 풀어볼 문제는 소수&펠린드롬이다.그냥 while문 돌리면서 n을 1씩 증가시키면서 n이 펠린드롬인지 판단하고 그 후에 소수인지 판단해서 둘다 만족하면 print하고 break하면 되겠다 해서 그렇게 짜 보았다.사실 이거 시간초과 날 줄 알고 시간초과나면 에라토스
이번에 푼 문제는 공약수이다.우선 이 문제를 풀기위해서 최대공약수와 최소공배수에 대한 기초 지식이 필요하다.라고 했을 때 우리가 구해야 되는 수를 A,B라고 하면라고 할 수 있다. 즉 A,B는 어떤 수에 g를 곱한 값이다.예를 들어서 두 수의 최대공약수가 6이라면 당연
오늘 풀어볼 문제는 일곱 난쟁이이다. 문제 일곱 난쟁이이를 찾아 오름차순으로 출력 풀이 과정 이 문제를 보고 먼저 떠올랐던 생각은 가능한 모든 조합을 구한 다음에 그 중 합이 100이 되는 걸 찾아서 출력하면 되겠다 였다. 좀 더 효율적으로 짤 수 있는 방법을
오늘 풀어볼 문제는 1로 만들기이다.이 문제를 보고 가장 처음 든 생각은 bfs가 아닐까 생각했다.최단거리를 찾는 느낌이니까 말이다.그래서 이렇게 짜봤는데 결과는 59%에서 틀렸습니다 판정그래도 어느정도 맞았다는 소리다!문제를 해결하려고 좀 뻘짓을 하다가 그것도 안돼서
오늘 풀어볼 문제는 암호 만들기이다. 문제 C개의 문자열 중에서 가능성 있는 암호를 모두 구해라 암호 조건 서로다른 L개의 알파벳 소문자 최소 한 개의 모음, 최소 두 개의 자음 알파벳 오름차순 풀이 과정
이번에 풀어볼 문제는 재귀 문자열이다.이 문제를 풀려고 했는데 나는 문제를 어떻게 풀 지 아이디어가 생각나지 않았다.그래서 블로그를 좀 참고했다.이 문제를 풀려고 시도한 사람 자체가 적어서 참고할 블로그가 없어서 난감했는데 감사하게도 C언어로 이 문제를 풀고 매우 잘
이번에 풀어볼 문제는 부분 수열의 합이다.업로드중..저번에 블로그에 정리한 암호 만들기 문제랑 거의 똑같아서 딱히 설명할 게 없다.그냥 dfs로 풀어주면 된다.
오늘 풀어볼 문제는 전화번호 목록이다. 문제 풀이 과정 처음 든 생각은 모든 전화번호 조합들을 startswith 함수를 써서 판단하면 되지 않을까였다. 동시에 든 생각은 물론 되겠지만 효율성 검사에서는 무조건 탈락이겠지.. 그렇지만 그거 외에는 다른 생각이 나지
이번에 풀어볼 문제는 AC이다.이 문제를 보고 처음 든 생각은 덱을 써야겠다였다.왜냐면 R함수를 적용했을 때 리스트를 진짜 뒤집지 않고 pop 하는 방향만 반대 쪽으로 바꿔주면 되겠다는 생각이 들었기 때문이다.그러면 양방향으로 pop을 할 수 있으면 되겠고, 이걸 가능
오늘 풀어볼 문제는 토마토 이다.뭔가 상하좌우로 탐색해서 최소를 구해야 하는 문제다.'탐색'을 해서 '최소'를 구한다. 여기서부터 BFS의 냄새가 났다.그리고 경험상 이렇게 행렬에서 상하좌우로 움직이는 문제는 BFS나 DFS 문제가 많았다.그래서 BFS로 풀면 되겠다고
오늘 풀어볼 문제는 순위검색이다.처음 이 문제를 보고 생각 한 건 해시 문제인가..? 였다.그래서 해시에 이런 식으로 저장하고 예를들어서 java, senior 찾으라고 하면 어떤 리스트(lst)에다가 그 조건을 만족하는 사람들을 쭉 넣는다.즉 hash"java"랑 h
오늘 풀어볼 문제는 로또의 최고순위와 최저 순위이다.이 문제를 보고 든 생각은 이렇게 쉬울리가 없는데.. 그냥 구현하면 될 거 같은데.. 아닌가.. 뭔가 함정이 있나..?하면서 괜히 의심을 했다. 근데 그냥 문제에 나온대로 풀었더니 통과됐다.고른 로또 번호 중에서 wi
이번에 풀 문제는 행렬 테두리 회전하기이다.이 문제를 보고 처음 생각했던 건 그냥 나온대로 풀자! 였다.근데 테두리를 어떻게 돌 수 있을 지 고민하느라 좀 헤맸다.상하좌우마다 따로 for문으로 돌까 생각도 했지만 코드가 더러워질 거 같아서 하나의 로직으로 할 수 없을까
이번에 풀 문제는 다단계 칫솔 판매이다.문제가 엄청 길어서 어려울 줄 알았는데 그냥 풀라는대로 푸니까 풀렸다.풀이 시간은 50분~한시간 정도 걸린 것 같다ㅠ 왜이렇게 오래걸리지?이름 별로 수익을 저장할 배열 income을 초기화 한다.각 판매원 별로 다단계 조직에 참여
문제 풀이과정 이 문제 보고 처음 든 생각은... bfs스럽다라는 거였다. 그냥 모든 경우의 수를 다 돌아 보다가 두 큐의 합이 같아지면 그만두는 느낌이니까 말이다. 근데 bfs로 풀기에는 너무 큐에다가 넣어줄 요소들이 많아질 거 같아서 이게 맞나..? 싶긴 했지만
이번에 풀 문제는 신고 결과 받기이다.2022 KAKAO BLIND RECRUITMENT 문제다.그냥 해시써서 풀라는대로 풀었다.결국 우리가 구해야되는건 어떤 사람이 얼마나 신고를 받았는 지 이기 때문에신고 받은 사람을 key로 하고 신고한 사람들의 집합을 value
오늘 풀 문제는 체스판 다시 칠하기이다.이 문제를 보고 처음 생각한 건 최솟값 구하기니까 DFS, BFS, 완전 탐색, DP 이 쪽이 아닐까 했다.근데 아무리봐도 다른 알고리즘을 적용할 수 없을 거 같아서 설마 완전 탐색인가 의심이 들어서 연산횟수를 계산했다.50x50
오늘 풀어볼 문제는 피보나치 함수이다. 문제 풀이 과정 이 문제를 보고 처음 생각한 건 혹시 dp..? 였다. 시간이 0.25초로 매우 짧기 때문에 절대로 재귀로 구현하면 안될거고 피보나치 수열에서 구하는 시간 단축하는 유명한 방법은 dp니까 말이다. 그리고 dp테
이번에 가져온 문제는 two sum이다.릿코드 문제 퀄리티가 좋다길래 이제부터 릿코드도 풀려고 한다.이건 그냥 두 개의 수를 더해서 target이 되는 두 수의 인덱스를 출력하면 되는 문제다.이렇게 풀어서 통과는 됐는데 O(n^2)의 시간 복잡도를 가진다.분명 더 좋은
이번에 풀 문제는 Add Two Numbers이다.그니까 두 수가 링크드 리스트 두 개로 주어지는데 거꾸로 주어진다.이 링크드 리스트 두개를 사용해서 두 수를 더하면 된다. 그러면 거꾸로 된 합이 나온다.예시에서 2->4->3 은 숫자로 따지면 342고 5->6->4는
오늘 풀어볼 문제는 Palindrome Number이다.어떤 숫자가 들어왔을 때 팰린드롬 수면 True 아니면 False를 리턴하라는 문제다.펠린드롬 수란 처음부터 읽었을 때랑 뒤에서 부터 읽었을 때랑 같은 수를 말한다.처음 생각했을 때는 그냥 str로 바꿔서 가운데를
오늘 풀 문제는 국회의원선거이다.매수라니 문제가 재밌어서 가져왔다ㅋㅋ가장 득표수가 많은 사람을 계속 확인해서 매수해서 다솜이의 득표수를 올리는 걸 반복하다가 제일 득표수가 많은 사람이 다솜이보다 득표수가 낮아지는 순간 매수를 멈추면 된다고 생각했다.그러면 '가장 득표수
이번에 풀 문제는 과제이다.이번주 알고리즘 스터디 진행하면서 푼 문젠데, 막혔었는데 풀어내서 뿌듯하다. 예전에는 이런 거 생각도 못했는데 한 3개월 정도 알고리즘 문제를 조금씩이라도 풀다보니 이제 어느정도 문제를 보는 눈이 생긴 것 같다. 풀이 시간은 45분 정도 걸렸
요즘 바빠서 포스팅을 못했다ㅠ 한동안 좀 더 바쁠 거 같은데.. 그래도 시간날 때 틈틈이 포스팅해야겠다!오랜만에 풀어볼 문제는 리모컨이다.이 문제는 몇달전에 풀려고 했는데 방법을 전혀 모르겠어서 포기했던 문제다.근데 이번에 다시 보고 20분 정도 고민하니까 푸는 방법이
오늘 풀어볼 문제는 탈출이다. 문제 풀이 과정 문제를 보고 처음 든 생각은 'BFS다'였다. 왜냐면 시작 지점부터 한칸씩 움직여가면서 도착지점까지 최소거리를 찾는 문제기 때문이다. 문제는 1초마다 물이 차오르는 것도 함께 고려해줘야 한다는 거다. 처음 생각한 아이
알고리즘 스터디를 운영하고 있기 때문에 매주 알고리즘 문제는 계속 풀고 있긴 하지만 회사 업무로 시간이 부족해서 블로그에 정리를 많이 못하고 있다ㅠㅠ그런데 이 문제는 일반적인 풀이와 다르게 조금 특별한 아이디어로 풀었기 때문에 짬을 내 공유하고자 한다.오늘 풀 문제는