알고리즘 47

99클럽 코테 스터디 34일차 TIL Find the Winner of the Circular Game

https://leetcode.com/problems/find-the-winner-of-the-circular-game/submissions/1296968550/    deque요세푸스josephus     1.  문제 및 접근    1823. Find the Winner of the Circular Game n명이 게임을 하는데, 1부터 n명까지 시계방향으로 돌아가고k가 주어지면 1번부터 시작해k번 떨어진 수의 사람을 돌며 탈락시킴원형이라 반복하며 마지막에 남은 친구가 승리하고 그 친구 반환deque로 구현하면 쉬울 것 같다. 1,2,3,4,5 k =2  [1,3,4,5] -2, [1,3,5] -4, [3,5] -3 [5] winner 5  Constraints:1    2. 풀이  public int..

알고리즘 2024.06.23

99클럽 코테 스터디 33일차 TIL Reordered Power of 2

https://leetcode.com/problems/reordered-power-of-2/submissions/1295772306/   setpowerOf2거듭제곱비트쉬프트연산자   1. 문제 및 접근    869. Reordered Power of 2   integer 타입의 숫자가 하나 주어지면 String으로 생각해서단어들을 재배열 하는데 ex) 12 = '1' '2' 12, 21이 2의 거듭제곱인지 판별해서 반환10^9까지 들어옴 10억기본적으로 312이 주어지면 ? 123, 132, 213, 231, 312, 321 다봐야한다그러면 들어오는 숫자는 10억이지만 숫자는 10개 0이 먼저할 수 없는 위치에 따라987,654,321이라면 9! = 최대 362,880개를 하나씩 다 2의 거듭제곱이 맞..

알고리즘 2024.06.22

99클럽 코테 스터디 32일차 TIL Top K Frequent Elements feat. CountingSort

https://leetcode.com/problems/top-k-frequent-elements/description/   priorityQueuemapmap.mergecounting sort    1.  문제 및 접근   347. Top K Frequent Elementsmap으로 관리31일차 문제와 너무 유사priorityQueue로 우선순위를 빈도의 내림차순으로 주고 K개만큼 뽑기++counting sort 방식 추가 문제가 이해하기 힘들어서 내 영어 실력의 문제인가 했지만, 댓글들을 보니 전세계인들이 화나있다불친절한 리트코드..   Constraints:1 -10^4 k is in the range [1, the number of unique elements in the array].It is g..

알고리즘 2024.06.20

99클럽 코테 스터디 31일차 TIL Sort Characters By Frequency feat. Comparator vs Comparable

https://leetcode.com/problems/sort-characters-by-frequency/submissions/1293844763/  getOrDefualtpriorityQueuemaxHeapmapEntry   1.  문제 및 접근   주어진 s를 나타나는 빈도수에 대해 내림차순으로 반환같은 수의 빈도라면 위치 상관 x , 붙어있어야 함 최대 50만 들어오고, 소문자 대문자 둘다 들어옴 문자를 돌면서 숫자를 세기 ? 그 후 객체로 비교 해서 정렬compatormap에 저장하고, 그 빈도수로 찾으면 더 편할듯 ?map에 키로 그 char 넣고, value로 빈도를 넣음밸류 값으로 내림순 정렬 후 그 키 그대로 반환 map.entry와 우선순위 큐 둘다 써 봐야겠다..  Constraints..

알고리즘 2024.06.20

99클럽 코테 스터디 30일차 TIL Minimum Suffix Flips

https://leetcode.com/problems/minimum-suffix-flips/description/    깊은 복사그리디 알고리즘   1.  문제 및 접근   1과 0으로 구성된 타겟 스트링이 들어오면 같은 길이의 0으로 이루어진 s를 타겟이랑 같이 만들고 싶다/한번 연산 0부터 시작하는 i~n-1까지의 인덱스를 한번에 바꿀 수 있다 (시작부터 끝까지 다 바꿈) 0 -> 1,     1-> 0s를 target과 동일하게 만들기 위한 최소 연산  순서는 어떤 걸 먼저 하냐보다  012 201 120 이 흐름에만 맞으면 됨x탐색을 어디서 하든 상관 x일 거 같다 그러면 0으로 시작한다면 다음 수가 뭔지를 찾아야함근데 000 -> 001로 바꾸는 경우에는 3부터 무조건 시작해야 하잖아그러면 최초..

알고리즘 2024.06.19

28일-2 Group the People Given the Group Size They Belong To

https://leetcode.com/problems/group-the-people-given-the-group-size-they-belong-to/submissions/1290345222/     1.  문제 및 접근 leetCode Group the People Given the Group Size They Belong To  문제 이해가 어려웠다배열이 주어지면, 같은 배열의 크기만큼 넣어서 그 숫자에 묶음 대한 index를 반환 일단 수가 들어오면 처음 들어오거나,or full이거나 확인하고 새로 만들어야 할듯 ? 즉 배열의 i번째 만큼의 크기의 배열을 만들고, 거기에 그 수를 넣는 것 처음엔 list로 들어온 것들을 찾고, 하려고 했는데, 사실 찾는다면 map을 써야 더 좋을 것 같아   Cons..

알고리즘 2024.06.17

99클럽 코테 스터디 28일차 TIL Find Words Containing Character

https://leetcode.com/problems/find-words-containing-character/submissions/1290261832/          1.  문제 및 접근    들어온 String 배열에서 현재 char의 letter이 있으면 그 인덱스 반환 없음 빈 배열들어온 char와 String은 e다 lowerCase  완탐 ?50글자가 50개 최대 50x50 2500? Constraints:1 1 x is a lowercase English letter.words[i] consists only of lowercase English letters.     2.  풀이 public List findWordsContaining(String[] words, char x) { L..

알고리즘 2024.06.17

99클럽 코테 스터디 27일차 TIL Find The Original Array of Prefix Xor

https://leetcode.com/problems/find-the-original-array-of-prefix-xor/description/   1. 문제 및 접근  2433. Find The Original Array of Prefix Xor비트연산 xorpref[0] = arr[0]pref[1] = arr[0] ^ arr[1]arr[1] = arr[0] ^ pref[1]pref[2]=  arr[0]^arr[1]^arr[2]arr[2] =  arr[0]^arr[1]^pref[2]     XOR ?     2.  풀이 public int[] findArray(int[] pref) { int arr[] = new int[pref.length]; arr[0] = pref[0]; int a..

알고리즘 2024.06.15

99클럽 코테 스터디 26일차 TIL Subrectangle Queries

https://leetcode.com/problems/subrectangle-queries/description/       1. 문제 및 접근   1476. Subrectangle Queries 총 3가지 메서드 1. 들어온대로 배열 만들기2. row,col을 들어오면 그 좌표 값 반환3. row1 co1 부터 row2 col2까지의 수를 들어온 newValue로 초기화 Constraints:There will be at most 500 operations considering both methods: updateSubrectangle and getValue.1 rows == rectangle.lengthcols == rectangle[i].length0 0 1 0 0    2. 풀이 public cl..

알고리즘 2024.06.14

99클럽 코테 스터디 25일차 TIL 순위

https://school.programmers.co.kr/learn/courses/30/lessons/49191 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 1.  문제 및 접근  1~n번까지의 권투선수, 1대1 방식으로 매치 결과를 0,1의 배열로 주어지는데 0이 이긴 선수 1이 진 선수주어진 매치 결과 순위를 매기려고 하는데 모든 결과가 있지 않아 정확하게 순위를 매길 수 없다결과만 보고 정확한 순위를 알 수 있는 선수의 수를 return 그래프로 방향성을 주고, 정답 리스트를 놓아서  [0,1,2,3,4,~ , n] 의 값중 하나만 있으면 정답으로 ..

알고리즘 2024.06.14