본문 바로가기

분류 전체보기351

[leetcode 204] Count Primes Count the number of prime numbers less than a non-negative number, n. Example 1: Input: n = 10 Output: 4 Explanation: There are 4 prime numbers less than 10, they are 2, 3, 5, 7. Example 2: Input: n = 0 Output: 0 Example 3: Input: n = 1 Output: 0 Constraints: 0 2020. 11. 25.
[leetcode 217] Contains Duplicate Given an array of integers, find if the array contains any duplicates. Your function should return true if any value appears at least twice in the array, and it should return false if every element is distinct. Example 1: Input: [1,2,3,1] Output: true Example 2: Input: [1,2,3,4] Output: false Example 3: Input: [1,1,1,3,3,4,3,2,4,2] Output: true 난이도 쉬움 여러가지 방법이 있다. 1. 소팅 사용 class Solution { publi.. 2020. 11. 25.
[백준 5639] 이진검색트리 www.acmicpc.net/problem/5639 5639번: 이진 검색 트리 트리를 전위 순회한 결과가 주어진다. 노드에 들어있는 키의 값은 106보다 작은 양의 정수이다. 모든 값은 한 줄에 하나씩 주어지며, 노드의 수는 10,000개 이하이다. 같은 키를 가지는 노드는 없다 www.acmicpc.net 어렵당...재귀를 사용하는 문제인거까진 알겠는데 접근이 어려웠다. 문제에서 요구하는 것은 전위순회를 후위순회로 바꾸는 것이다. bst이므로 중복된 숫자는 존재하지 않고 왼쪽 서브트리 왼쪽 서브트리 -> 오른쪽 서브트리 순이므로 배열의 0번째 인덱스가 무조건 루트임을 확인할 수 있다. 왼쪽 서브트리에 있는 노드들은 전부 .. 2020. 11. 24.
[백준 16945] 매직 스퀘어로 변경하기 www.acmicpc.net/problem/16945 16945번: 매직 스퀘어로 변경하기 1부터 N2까지의 수가 하나씩 채워져 있는 크기가 N×N인 배열이 있고, 이 배열의 모든 행, 열, 길이가 N인 대각선의 합이 모두 같을 때, 매직 스퀘어라고 한다. 크기가 3×3인 배열 A가 주어졌을 때, www.acmicpc.net 처음 봤을 땐 무슨 문젠가 싶지만 3 * 3 칸만 채우면 되므로 브루트포스 - 백트래킹을 사용하면 된다. 사각형을 모든 경우의 수로 채우는 백트래킹을 사용한다. cnt는 3 * 3칸 내에서 칸의 위치를 의미한다. 스퀘어를 1~9로 채우고 난 후 매직스퀘어 조건에 충족한다면 -> 원래 스퀘어와의 차이를 계산 -> 최솟값을 리턴 매직 스퀘어 조건은 가로 세로 대각선의 합이 모두 같은 것.. 2020. 11. 23.