이분탐색

https://www.acmicpc.net/problem/15823 코드import sysinput = sys.stdin.readlinen, m = map(int, input().split())arr = list(map(int, input().split()))def chk(num): # Two Pointer pack = set() l, r = 0, 0 cnt = 0 while r  50점만 받을 수 있는 코드이다.Parametric Search과 Two Pointer 알고리즘을 사용했는데, Parametric Search에서 조건을 검사할 때 Two Pointer를 사용한다. bs() : Parametric Search하나의 카드 팩을 구성할 수 있는 최대 카드 수를 Parame..
1114번: 통나무 자르기 첫째 줄에 두 개의 수를 출력한다. 첫 번째 수는 가장 긴 조각의 길이이고, 두 번째 수는 그 때 처음 자르는 위치를 출력한다. 만약 가능한 것이 여러 가지라면, 처음 자르는 위치가 작은 것을 출 www.acmicpc.net 코드 l, k, c = map(int, input().split()) points = [0]+sorted(list(map(int, input().split())))+[l] pieces = [points[i+1]-points[i] for i in range(k+1)] longest = max(pieces) def chk(length): # 최대 길이 if longest > length: # 가능한 최대 길이보다 더 긴 통나무가 있는 경우 return [100..
2417번: 정수 제곱근 정수가 주어지면, 그 수의 정수 제곱근을 구하는 프로그램을 작성하시오. www.acmicpc.net 코드 n = int(input()) s, e = 0, n ans = 0 while s
10815번: 숫자 카드 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net 코드 n = int(input()) s = set(map(int, input().split())) m = int(input()) for i in map(int, input().split()): if i in s: print(1, end=" ") else: print(0, end=" ") 숫자 카드의 수들을 집합에 넣고, 이 수를 갖고 있는지 없는지 찾아서 출력해주면 된다. 다른 방법으로는 이분탐색을 이용하는 방법이 있다. 바로 2번째..
3273번: 두 수의 합 n개의 서로 다른 양의 정수 a1, a2, ..., an으로 이루어진 수열이 있다. ai의 값은 1보다 크거나 같고, 1000000보다 작거나 같은 자연수이다. 자연수 x가 주어졌을 때, ai + aj = x (1 ≤ i < j ≤ n)을 만족하는 www.acmicpc.net 코드 n = int(input()) a = sorted(list(map(int, input().split()))) x = int(input()) ans = 0 for i in range(n): s, e = i+1, n-1 while s
딜레이레이
'이분탐색' 태그의 글 목록 (3 Page)