[백준 15654번] N과 M(5)
http://www.acmicpc.net/problem/15654 15654번: N과 M (5) N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 www.acmicpc.net # 조건 N개의 자연수와 자연수 M이 주어질 때, 아래 조건 만족하는 길이가 M인 수열을 모두 가하라 N개의 자연수 중에서 M개를 고른 수열 # 접근 방법 중복되는 수열 여러 번 출력하면 안되지만 순서가 뒤바뀐 것은 다른 수열이므로 순열을 이용해준다. 사전 순 출력이므로 오름차순 from itertools import permutations N, M = map(int, input().spl..
2022.11.08
[백준 15652번] N과 M(4)
http://www.acmicpc.net/problem/15652 15652번: N과 M (4) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net # 조건 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하라 1부터 N까지 자연수 중에서 M개를 고른 수열 같은 수를 여러 번 골라도 된다. 고른 수열은 비내림차순이어야 한다. 길이가 K인 수열 A가 A1
2022.11.07
no image
[백준 2407번] 조합
http://www.acmicpc.net/problem/2407 2407번: 조합 n과 m이 주어진다. (5 ≤ n ≤ 100, 5 ≤ m ≤ 100, m ≤ n) www.acmicpc.net 조건 nCm 을 구하여라 접근 방법 입력이 크지 않기 때문에 dp 이용해주지 않아도 될 것 같다. def fac(n): num = 1 for i in range(2,n+1): num*=i return num n,m = map(int,input().split()) print(fac(n) // (fac(m)*fac(n-m)))
2022.11.05
[백준 11659] 파이썬 - 구간 합 구하기 4
http://wwww.acmicpc.net/problem/11659 # 조건 수 N개가 주어졌을 때, i번째 수부터 j번째 수까지 합을 구하는 프로그램 작성하시오 첫 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘쨰 줄에는 N개의 수가 주어진다.ㅣ 수는 1,000보다 작거나 같은 자연수 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j가 주어진다. # 접근 방법 slicing을 통하여 합을 구해주면 된다. 이 때, slicing의 시작 구간 -1을 해주어야 한다. 위와 같이 하면 시간초과 따라서 누적합을 구해준다. 즉, 처음에 한 번 누적합 리스트를 구해준 후 B까지의 합에서 A-1까지의 합을 빼준다. import sys N, M = map(int, sys.stdin.readli..
2022.10.19
[백준 1711번] 파이썬 - 직각삼각형
https://www.acmicpc.net/problem/1711 1711번: 직각삼각형 첫째 줄에 점의 개수 N(3 ≤ N ≤ 1,500)이 주어진다. 둘째 줄부터 N개의 줄에 걸쳐 각 점의 x좌표와 y좌표가 빈 칸을 사이에 두고 주어진다. 좌표값은 절댓값이 1,000,000,000을 넘지 않는 정수이며, 주 www.acmicpc.net # 조건 2차원 평면에 N개의 점 세 점을 골랐을 때, 직각삼각형이 몇 개있는지를 구하여라. # 접근 방법 피타고라스 정리 c^2 = a^2 + b^2 두 점 사이의 거리를 구해서 가장 긴 변이 빗변이 된다. 빗변을 구한 후 피타고라스 정리를 이용하여 직각삼각형인지 판별 # 브루트 포스 - 시간초과 N = int(input()) dot = [list(map(int, i..
2022.10.03
[백준 1198번] 파이썬 - 삼각형으로 자르기
https://www.acmicpc.net/problem/1198 1198번: 삼각형으로 자르기 볼록 다각형이 있고, 여기서 3개의 연속된 점을 선택해서 삼각형을 만든다. 그 다음, 만든 삼각형을 다각형에서 제외한다. 원래 다각형이 N개의 점이 있었다면, 이제 N-1개의 점으로 구성된 볼록 www.acmicpc.net # 조건 볼록 다각형이 있고 3개의 연속된 점을 선택해서 삼각형 만든 삼각형을 다각형에서 제외 원래 다각형이 N개의 점이 있엇다면, 이제 N-1개의 점으로 구성된 볼록 다각형이 된다. 위의 과정을 남은 다각형이 삼각형이 될 때까지 반복 점이 시계 방향순으로 주어지며, 마지막에 남은 삼각형은 여러 가지가 있을 수 있을 때, 넓이가 최댓값일 경우를 구하여라. # 접근 방법 3개의 점을 선택해서..
2022.10.02
[백준 1002번] 파이썬 - 터렛
https://www.acmicpc.net/problem/1002 1002번: 터렛 각 테스트 케이스마다 류재명이 있을 수 있는 위치의 수를 출력한다. 만약 류재명이 있을 수 있는 위치의 개수가 무한대일 경우에는 -1을 출력한다. www.acmicpc.net # 조건 규현과 승환의 좌표 -10,000
2022.10.02
[백준 20206] 파이썬 - 푸앙이가 길을 건너간 이유
https://www.acmicpc.net/problem/20206 20206번: 푸앙이가 길을 건너간 이유 첫째 줄에는 정수 A, B, C (-10,000 ≤ A, B ≤ 10,000, -100,000 ≤ C ≤ 100,000)가 주어진다. 해당 숫자들은 좌표 평면 상에서 Ax+By+C=0 형태로 표현되는 푸앙이가 지나가는 직선 상의 경로을 나타낸다. (단 www.acmicpc.net # 조건 x축과 y축과 평행한 직사각형 형태로 이루어진 위험지역 푸앙이는 직선 상의 경로를 따라 흑석동을 통과 푸앙이가 위험 지역을 지나가는지 여부를 알아내어, 해당 지역을 지나가지 못하도록 조치를 취하라 A,B,C (-10,000 expression2 and abs(expression1) < abs(expression2..
2022.10.02
[백준 1676번] 파이썬 - 팩토리얼 0의 개수
https://www.acmicpc.net/problem/1676 1676번: 팩토리얼 0의 개수 N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오. www.acmicpc.net # 조건 N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성 0
2022.09.28