전체 글
-
[백준] 15654번 N과 M(5)Algorithm Study/Python 2021. 4. 19. 04:27
www.acmicpc.net/problem/15654 15654번: N과 M (5) N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 www.acmicpc.net 문제 N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 입력 첫째 줄에 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8) 둘째 줄에 N개의 수가 주어진다. 입력으로 주어지는 수는 10,000보다 작거나 같은 자연수이다. 출력 한 줄에 하나씩 문제의 조건을 만족..
-
[백준] 15652번 N과 M(4)Algorithm Study/Python 2021. 4. 19. 04:17
www.acmicpc.net/problem/15652 15652번: N과 M (4) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 문제 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 M개를 고른 수열 같은 수를 여러 번 골라도 된다. 고른 수열은 비내림차순이어야 한다. 길이가 K인 수열 A가 A1 ≤ A2 ≤ ... ≤ AK-1 ≤ AK를 만족하면, 비내림차순이라고 한다. 입력 첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8) 출..
-
[백준] 15651번 N과 M(3)Algorithm Study/Python 2021. 4. 19. 03:44
www.acmicpc.net/problem/15651 15651번: N과 M (3) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 문제 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 M개를 고른 수열 같은 수를 여러 번 골라도 된다. 입력 첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 7) 출력 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 ..
-
[백준] 15650번 N과 M(2)Algorithm Study/Python 2021. 4. 19. 03:05
www.acmicpc.net/problem/15650 15650번: N과 M (2) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 문제 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 고른 수열은 오름차순이어야 한다. 입력 첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8) 출력 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서..
-
[백준] 15649번 N과 M(1)Algorithm Study/Python 2021. 4. 19. 02:59
www.acmicpc.net/problem/15649 15649번: N과 M (1) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 문제 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 입력 첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8) 출력 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으..
-
[기능] 파이썬 stdin 입력Language Study/Python 2021. 4. 16. 06:24
www.acmicpc.net/problem/15552 15552번: 빠른 A+B 첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다. A와 B는 1 이상, 1,000 이하이다. www.acmicpc.net 일반적으로 입력을 받을 때에는 input()을 사용한다. 하지만 백준 15552번 빠른 A+B와 같은 문제를 해결할 때에는 input()으로 입력받는 경우에는 시간 초과가 발생한다. 이 때 impor sys를 하여 stdin으로 입력을 받는다면 시간초과를 발생시키지 않을 수 있다. sys.stdin.readline() 1. 정수 입력 받기 import sys number = int(sys.stdin.readline()) 하나의 ..
-
[기능] 파이썬 순열, 조합 (Permutations, Combinations)Language Study/Python 2021. 4. 6. 04:26
순열 (nPr) 순열이란 서로 다른 n개중에 r개를 선택하는 경우의 수를 의미합니다. (순서 상관 있음) 조합 (nCr) 조합이란 서로 다른 n개중에 r개를 선택하는 경우의 수를 의미합니다. (순서 상관 없음) 프로그램을 짜다보면 순열과 조합을 사용하는 상황이 종종 발생한다. 그런 순간에 직접 재귀나 반복문을 이용하여 구현할 수 있지만 파이썬은 모듈을 이용하여 쉽게 사용할 수 있다. 바로 itertools의 permutations 와 combinations이다. import itertools chars = ['A', 'B', 'C'] perm = itertools.permutations(chars, 2) # 순열 comb = itertools.combinations(chars, 2) # 조합 print(..
-
[기능] 파이썬 리스트 복사 (python copy)Language Study/Python 2021. 4. 1. 22:27
Copy 파이썬에서 일반적으로 복사할 때 아래와 같은 형식으로 진행된다. list_A = ["ABC","DEF"] list_B = list_A 하지만 이렇게 복사를 하는 경우 단순한 값에 대해서는 문제가 없지만, 리스트를 복사할 때에는 C 언어에서 포인터만 지정한 것과 비슷한 경우된다. 실제로 list는 1개만 존재하지만 2가지 이름으로 가리키는 것이다. list_A = ["ABC","DEF"] list_B = list_A list_B.append("GHI") print(list_A) #결과 ["ABC","DEF","GHI"] 위의 경우와 같이 B를 수정했지만 A에도 반영되고 있다. 그래서 단순히 = 로 복사하는 경우에는 문제가 생길 수 있다. Shallow Copy 리스트와 같은 변형 객체에서는 다른 ..