알고리즘48 [프로그래머스] 정수 제곱근 구하기 문제 https://programmers.co.kr/learn/courses/30/lessons/12934 내가 생각했던 풀이과정 1. 처음 생각한 것은 제곱근을 확인하기 위해 나눴을 때 정수형인지 판별하려 했으나 나눴을 때 실수형(float) 형태로 나오기 때문에 다른 방법을 생각했습니다. 두번째로 생각한 점은 제곱근을 했을 때 만약 정수가 나왔다면 int 형태로 바꾼 다음 다시 제곱을 하여도 n이랑 같아야 하기 때문에 그 방식을 사용하였습니다. 2. 만약 정수의 제곱이면 정수(제곱근)에 1을 더한 수를 제곱한수를 리턴 3. 정수의 제곱이 아니면 -1 을 리턴 나의 풀이 def solution(n): result = 0 temp = n**(1/2) if int(temp)**2 == n: result =.. 2021. 5. 28. [프로그래머스] 로또의 최고 순위와 최저 순위 문제 https://programmers.co.kr/learn/courses/30/lessons/77484 내가 생각했던 풀이과정 1. 일단 0의 갯수를 셉니다. 0의 갯수를 세어야하는 이유는 0의 숫자만큼 숫자가 지워졌을 때 두 가지 경우로 나눠지기 때문 입니다. 1) 최선의 조건일 때는 0 대신에 로또 당첨 숫자에 맞는 숫자를 넣을 수 있습니다. 2) 최악의 조건일 때는 0 대신에 로또 당첨 숫자에 맞지 않는 숫자를 넣을 수 있습니다. 2. 두번째로 0을 제외한 경우 맞은 갯수를 셉니다. 3. 최선의 경우: 0의 갯수 대로 1) 조건일 때는 맞은 갯수에 0의 갯수를 더해줍니다. 최악의 경우: 0의 갯수와 상관없이 맞은 갯수가 그대로 당첨 숫자와 일치한 갯수가 되게 됩니다. 4. 순위를 매겨야하기 때문.. 2021. 5. 28. [Baekjoon] 백준 알고리즘: 9012 - 괄호 문제 https://www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 내가 생각했던 풀이과정 기본 VPS인 올바른 괄호 문자열을 만족하려면 1) 여는 괄호의 갯수와 닫는 괄호의 갯수가 같아야합니다 2) 또한 한쌍의 여는 괄호와 닫는 괄호의 짝이 맞아야합니다 이를 스택을 이용하면 쉽게 구현할 수 있습니다. 이 문제의 핵심은 '문자열을 앞에서부터 읽어나갈 때, 닫는 괄호는 남아있는 괄호 중에서 가장 최근에 들어온 여는 괄호와 짝을 지.. 2021. 5. 25. [Baekjoon] 백준 알고리즘: 11866 - 요세푸스 문제 0 문제 https://www.acmicpc.net/problem/11866 11866번: 요세푸스 문제 0 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net 내가 생각했던 풀이과정 1. K번째 사람을 제거하고, 남은 사람들로 이루어진 원을 따라 계속한다는 점은 원하는 요소를 pop할 수 있게 회전 한 후 pop한다고 생각을 하여 deque를 이용하였다. 2. 원하는 요소를 pop하기 위해 -(K-1) 만큼 회전을 한다. -(K-1) 만큼 회전하는 이유는 좌로 회전하기 위함이다 3. 좌로 회전을 하고 맨 처음 요소를 popleft 한 것을 리스트에 넣는다. 리스트에 넣을 때는 안에 넣어야하기 때문에 문자열로 처리해서 넣는다. .. 2021. 5. 23. 이전 1 2 3 4 5 6 ··· 12 다음