1번 문제 부터 시간이 꽤나 걸렸다. 우선, 문제를 바라볼때 처음부터 냅다 코딩 하는게 아니라, 문제의 핵심을 정확하게 이해하고 시작하자.이 문제의 규칙성 핵심은, 뒤에 있는 0 은 정리를 하는것이 핵심이였다.우리가 알고자 하는것은 결국 1과 1사이의 0의 갯수중 가장
쉬운 문제 였다. 풀었던 사고과정은, 규칙성을 먼저 찾았다. 횟수가 몇으로 오던 결국엔 총 길이의 나머지 만큼 더 나아간다는것을 인지하여, 쉽게 풀 수 있었다.
맨 처음엔 그냥 외워서 코드 치다보니까 왜 이런지 이해가 되었다... 힝 오랜만에 좀 복잡한거 공부하니 집중도 잘 안되고 이해력도 현저히 떨어졌다.지금까진 웜업이고.. 천천히 올려봐야겠다.우선, 재귀를 짤때 먼저 탈출 조건을 만들어야 한다.탈출 조건은, 1개만 남았을때
머지소트는 퀵소트 보단 더 직관적으로 안다가온다. 우선 각각의 배열의 성분을 하나가 될때까지 계속 쪼갠다. 중간의 사이즈로 한개가 될때까지 쪼개주기. 탈출 조건은 끝 에 값이 시작값 보다 작아질때까지.그리고 이제 다 쪼개지면, 정렬을 하게되는데 정렬은 쉬움정렬을 할때
흠... 지금 코딜리티 플랫폼이 먹통이라 정답체크는 못 해봤다. skt 코딩테스트때문에 먹통됐다던데 ㅠ 아무튼 문제는 그리 어렵지 않았다. 약간 indexedTree 의 문제에 착안해서 풀었다. 꼭 클래스를 안써서 할수도 있었겠지만, 딕셔너리 값을 갖기위해 클래스를 사
스택에 관한 문제. 아주 쉬움해야할건 언제 제거를 해주느냐 만 정리해주면 됨명심하자. 코드 짤때 내가 해야할것만 짜주면 나머지는 알아서 처리됨
맨처음에 인덱스 트리 로 생각해서 풀까 말까 귀찮아서 고민했었는데, 사실 인덱스트리를 안써도 되는 문제였다. 방향이 고정되어있어서, 0 을 만나면 가중치를 1씩 늘려주고, 1을 만날때마다 가중치를 결과값에 더해주면 끝물론, 시간복잡도를 생각하면 무조건 인덱스트리.
많이 쉬웠던 문제. 맨 처음에 문제를 잘 못 읽어서 dominator 가 갖고있는 모든 인덱스를 뱉어야하는줄 알고 코드를 좀 복잡하게 짰었다. 근데 문제 다시 읽어보니 아무 인덱스나 뱉어내는거라... 아주 쉽게 풀었다.풀이법은, 우선 인덱스를 하나라도 뱉어야하니, 인덱
ㅠㅠ 꽤 시간 걸렸다... 고통스러웠음 처음엔 정렬을 어떤식으로 할까 계속 생각을 하다가 아무리 생각해봐도 시간복잡도가 N^2이 나왔다. 그래서 차분하게 다시 내가 해야하는것이 무엇인가에 대해 생각해봤다.우선 인풋 벨류가 시간으로 정렬이 되었으니 이것은 건드리지 말고
와 예외 케이스 다 생각했어야 했던 문제... 좀 짜증나기도 하고 귀찮은 문제지만 중요한 문제다.우선 아이디어가 스택 인건 금방 잡았다. 그래서 예외 케이스를 다 나눠서 생각했고, 예외 케이스가 너무 많아서 자꾸 틀렸다. 그러다보니 if문이 너무 많아졌고 꽤나 복잡한
너무 쉬웠던 문제 시간복잡도는 N 이 나올테지만, 최대한 줄여볼려고 2/N까지는 만들었다. 그리고 조합의 예외 케이스 잡아주는 로직 하나 넣어주면 끝
스택 쓰면 되는 문제.너무 easy 했었다. 예외 케이스에 대해서만 더 꼼꼼하게 생각하고 빠르게 문제 풀기.미리 수도코드로 다 짜놓고 코딩하기.
오...꽤 어려운 문제 만났다.맨처음에 문제를 그리 안 오래 걸리고 풀었는데, 정답은 맞췄으나 시간복잡도에서 터져버렸다. 그 이유는, 중복되는 계산을 N번 만큼 계속해서 해줬기 때문이다.그래서 어떻게 시간절약도를 줄일 수 있을까 고민하다가, 중복되는 계산을 기억할 수
ez했던 문제옛날에 소인수 계산하는 문제 풀어봤던 기억이 있어서 금방 품.다만, prime 인지 아닌지 체크해주는 꼼꼼함 챙기자.절대 먼저 run 하지 말고, 테스크케이스 만드는데 최소 3분이라도 쓰자 ㅠㅠ 그냥 다 풀었다고 덜렁대며 돌리지 말고......!!!! 제발
정답은 맞췄는데 heap 메모리 터져버렸다. int 가 4byte라서 10억짜리 크기의 int 배열을 생성하게 되면, 40억바이트라 default heap size 에서는 터져버림. 실험해보니, 1억까지는 터지지 않는것을 발견. 아무튼 이렇게 풀면 안되고..... 여러
문제 아이디어가 스택이라는건 금방 잡았다. 규칙성 찾고 디버깅 하면서 예외 빠르게 찾자. 클때 작을때 규칙성을 찾고 예외처리 해주기.만약이라도, 문제의 예시가 예외를 포함하지 않을 수 있으니, 좀 더 꼼꼼하게 봐보기. 모든 경우의 수 생각해보기.