728x90 🍪 Ect55 [99클럽 코테 스터디] 39일차 TIL 그리디 오늘의 문제는 LeetCode 455. Assign Cookies 문제 문제 설명 아이들에게 쿠키를 나누어 주려고 합니다. 각 아이의 욕심 정도를 나타내는 배열 g와 쿠키의 크기를 나타내는 배열 s가 주어졌을 때, 각 아이가 만족하려면 쿠키의 크기가 아이의 욕심보다 크거나 같아야 합니다. 최대한 많은 아이를 만족시킬 수 있도록 하는 쿠키 배분 결과를 반환하는 문제입니다. [입력 예시]g = [1,2], s = [1,2,3][출력 예시]2 문제 풀이 시간 권장 풀이 시간은 60분이었고, 저는 32분이 걸렸습니다. 문제 접근 방식먼저, 주어진 배열 g와 s를 오름차순으로 정렬합니다. 그 다음 두 배열을 순차적으로 탐색하면서 쿠키의 크기가 아이의 욕심보다 크거나 같을 경우(s[j] >= g[i].. 2024. 8. 29. [99클럽 코테 스터디] 38일차 TIL 그리디 오늘의 문제는 LeetCode 409. Longest Palindrome 문제 문제 설명 대문자 또는 소문자로 구성된 문자열 s가 주어졌을 때 회문으로 만들수 있는 총 글자수를 반환하는 문제입니다. [입력 예시]s = "abccccdd"[출력 예시]7 문제 풀이 시간 권장 풀이 시간은 60분이었고, 저는 42분이 걸렸습니다. 문제 접근 방식먼저 해시맵을 생성해 문자열 s의 각 문자와 해당 문자의 빈도수를 저장합니다. 그 다음 저장된 각 문자의 빈도수를 확인하며 짝수인 경우에는 최종 길이에 더합니다. 빈도수가 홀수인 경우에는 해당 빈도수에서 1을 뺀 값을 길이에 더하고 isOdd를 true로 설정합니다. 빈도수가 홀수인 문자가 있다면 최종 길이에 1을 더해 반환합니다. 문제 풀이impo.. 2024. 8. 28. [99클럽 코테 스터디] 37일차 TIL 완전 탐색 오늘의 문제는 백준 9094. 수학적 호기심 문제 문제 설명 두 정수 n과 m이 주어졌을 때 0 (a^2 + b^2 + m) / (ab)가 정수인 쌍의 개수를 구하는 문제입니다. [입력]첫 번째 줄 : 테스트 케이스의 개수 T가 주어집니다. 다음 줄 : 각 테스트 케이스가 n과 m 한 줄로 주어집니다. [출력] 각 테스트 케이스마다 문제의 조건을 만족하는 (a, b) 쌍의 개수를 출력합니다. [입력 예시]310 120 330 4[출력 예시]245 문제 풀이 시간 권장 풀이 시간은 60분이었고, 저는 32분이 걸렸습니다. 문제 접근 방식완전 탐색 방식으로 문제를 풀었습니다. countPairs 메서드를 통해 (a^2 + b^2 + m) / (ab)가 정수가 되는 쌍 (a, b)를 찾습니다... 2024. 8. 27. [99클럽 코테 스터디] 36일차 TIL 완전탐색 오늘의 문제는 백준 적어도 대부분의 배수 문제 문제 설명 100보다 작거나 같은 다섯개의 자연수가 주여졌을 때, 대부분의 배수를 출력하는 문제입니다. 여기서 대부분의 배수란 입력받는 다섯개의 수 중 적어도 세 개로 나누어지는 가장 작은 자연수를 의미합니다. [입력]첫째 줄에 다섯 개의 자연수가 주어집니다. 100보다 작거나 같은 자연수이고, 서로 다른 수입니다. [출력] 첫째 줄에 적어도 대부분의 배수를 출력해야 합니다. [입력 예시]30 42 70 35 90[출력 예시]210 문제 풀이 시간 권장 풀이 시간은 60분이었고, 저는 30분이 걸렸습니다. 문제 접근 방식5개의 자연수를 ArrayList에 입력받습니다. 이후 메서드를 사용하여 ArrayList를 탐색합니다. 이때, 1부터 시작.. 2024. 8. 26. [99클럽 코테 스터디] 35일차 TIL DFS/BFS 오늘의 문제는 백준 2583번 영역 구하기 문제 문제 설명 M x N 크기의 모눈 종이 안에 세 개의 직사각형이 들어있습니다. 이 때 직사각형을 제외한 나머지 부분이 몇 개의 분리된 영역으로 나누어지고 그 영역의 넓이가 얼마인지 구하는 문제입니다. [입력]첫 번째 줄 : 100 이하의 자연수 M, N, k가 빈 칸을 사이에 두고 차례로 주어집니다. 다음 줄 : 직사각형의 왼쪽 아래 꼭지점의 x, y 좌표값과 오른쪽 꼭지점의 x,y 좌표값이 빈 칸을 사이에 두고 주어집니다. [출력] 첫째 줄 : 분리되어 나누어지는 영역의 개수를 출력합니다. 둘째 줄 : 각 영역의 넓이를 오름차순으로 정렬하여 빈칸을 사이에 두고 출력합니다. [입력 예시]5 7 30 2 4 41 1 2 54 0 6 2[출력 예시]31.. 2024. 8. 25. 이전 1 2 3 4 5 ··· 11 다음 728x90