⌨️ Algorithms
-
https://www.acmicpc.net/problem/9663 9663번: N-Queen N-Queen 문제는 크기가 N × N인 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓는 문제이다. N이 주어졌을 때, 퀸을 놓는 방법의 수를 구하는 프로그램을 작성하시오. www.acmicpc.net n = int(input()) # 체스판 크기: n × n answer = 0 row = [0]*n # 1차원으로 좌표 표현 ex) row[1] = 2 -> (1,2) # 동일한 열 또는 대각선에 위치한 경우, 탐색하지 않음 def is_promising(x): # x: 말을 두는 위치 for i in range(x): # 동일한 열 또는 대각선에 위치하면 if row[x] == row[i] or abs(row[..
[Python] 백준 9663번_N-Queenhttps://www.acmicpc.net/problem/9663 9663번: N-Queen N-Queen 문제는 크기가 N × N인 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓는 문제이다. N이 주어졌을 때, 퀸을 놓는 방법의 수를 구하는 프로그램을 작성하시오. www.acmicpc.net n = int(input()) # 체스판 크기: n × n answer = 0 row = [0]*n # 1차원으로 좌표 표현 ex) row[1] = 2 -> (1,2) # 동일한 열 또는 대각선에 위치한 경우, 탐색하지 않음 def is_promising(x): # x: 말을 두는 위치 for i in range(x): # 동일한 열 또는 대각선에 위치하면 if row[x] == row[i] or abs(row[..
2022.08.19 -
https://school.programmers.co.kr/learn/courses/30/lessons/42747 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr """ 입출력 예시) citations = [3, 0, 6, 1, 5] -> 3 """ def solution(citations): # citations를 내림차순으로 정렬 citations.sort(reverse=True) for h, citation in enumerate(citations): if h >= citation: return h # 인용된 수가 발표한 논문의 수와 같거나 작아지기 ..
[Python] 프로그래머스 Lv2_H-Indexhttps://school.programmers.co.kr/learn/courses/30/lessons/42747 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr """ 입출력 예시) citations = [3, 0, 6, 1, 5] -> 3 """ def solution(citations): # citations를 내림차순으로 정렬 citations.sort(reverse=True) for h, citation in enumerate(citations): if h >= citation: return h # 인용된 수가 발표한 논문의 수와 같거나 작아지기 ..
2022.08.19 -
https://school.programmers.co.kr/learn/courses/30/lessons/42746 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr """ 입출력 예시) numbers = [6, 10, 2] -> "6210" numbers = [3, 30, 34, 5, 9] -> "9534330" """ from itertools import permutations def solution(numbers): permu = list(map(''.join, permutations(map(str, numbers)))) # permutations 쓸 ..
[Python] 프로그래머스 Lv2_가장 큰 수https://school.programmers.co.kr/learn/courses/30/lessons/42746 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr """ 입출력 예시) numbers = [6, 10, 2] -> "6210" numbers = [3, 30, 34, 5, 9] -> "9534330" """ from itertools import permutations def solution(numbers): permu = list(map(''.join, permutations(map(str, numbers)))) # permutations 쓸 ..
2022.08.18 -
https://school.programmers.co.kr/learn/courses/30/lessons/42748 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr """ 입출력 예시) array = [1, 5, 2, 6, 3, 7, 4], commands = [[2, 5, 3], [4, 4, 1], [1, 7, 3]] -> [5, 6, 3] """ def solution(array, commands): answer = [] for i, j, k in commands: # array의 i번째 숫자부터 j번째 숫자까지 자르기 first_arr = array[i..
[Python] 프로그래머스 Lv1_K번째수https://school.programmers.co.kr/learn/courses/30/lessons/42748 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr """ 입출력 예시) array = [1, 5, 2, 6, 3, 7, 4], commands = [[2, 5, 3], [4, 4, 1], [1, 7, 3]] -> [5, 6, 3] """ def solution(array, commands): answer = [] for i, j, k in commands: # array의 i번째 숫자부터 j번째 숫자까지 자르기 first_arr = array[i..
2022.08.18 -
https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr """ 입출력 예시) participant = ["leo", "kiki", "eden"], completion = ["eden", "kiki"] -> "leo" participant = ["marina", "josipa", "nikola", "vinko", "filipa"], completion = ["josipa", "filipa", "marina", "nikola"] -> "vinko" par..
[Python] 프로그래머스 Lv1_완주하지 못한 선수https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr """ 입출력 예시) participant = ["leo", "kiki", "eden"], completion = ["eden", "kiki"] -> "leo" participant = ["marina", "josipa", "nikola", "vinko", "filipa"], completion = ["josipa", "filipa", "marina", "nikola"] -> "vinko" par..
2022.08.15 -
https://school.programmers.co.kr/learn/courses/30/lessons/43163 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr """ 입출력 예시) begin = "hit", target = "cog", words = ["hot", "dot", "dog", "lot", "log", "cog"] -> 4 begin = "hit", target = "cog", words = ["hot", "dot", "dog", "lot", "log"] -> 0 """ from collections import deque def soluti..
[Python] 프로그래머스 Lv3_단어 변환https://school.programmers.co.kr/learn/courses/30/lessons/43163 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr """ 입출력 예시) begin = "hit", target = "cog", words = ["hot", "dot", "dog", "lot", "log", "cog"] -> 4 begin = "hit", target = "cog", words = ["hot", "dot", "dog", "lot", "log"] -> 0 """ from collections import deque def soluti..
2022.08.14