728x90
반응형
728x90
반응형
https://www.acmicpc.net/problem/2230문제 요약N개의 정수로 이루어진 수열 A[1], A[2], …, A[N]이 있습니다. 이 수열에서 두 수를 골랐을 때(같은 수일 수도 있습니다), 그 차이가 M 이상이면서 제일 작은 경우를 구하는 프로그램을 작성해야합니다.예를 들어 수열이 {1, 2, 3, 4, 5}라고 하자. 만약 M = 3일 경우, 1 4, 1 5, 2 5를 골랐을 때 그 차이가 M 이상이 됩니다. 이 중에서 차이가 가장 작은 경우는 1 4나 2 5를 골랐을 때의 3이 됩니다. 1 ≤ N ≤ 100,0000 ≤ M ≤ 2,000,000,0000 ≤ |A[i]| ≤ 1,000,000,000문제 풀이1. 입력 범위를 보면 int를 아득히 넘기 때문에 long long in..
https://www.acmicpc.net/problem/2467문제 요약KOI 부설 과학연구소에서는 많은 종류의 산성 용액과 알칼리성 용액을 보유하고 있습니다. 각 용액에는 그 용액의 특성을 나타내는 하나의 정수가 주어져있습니다. 산성 용액의 특성값은 1부터 1,000,000,000까지의 양의 정수로 나타내고, 알칼리성 용액의 특성값은 -1부터 -1,000,000,000까지의 음의 정수로 나타냅니다.같은 양의 두 용액을 혼합한 용액의 특성값은 혼합에 사용된 각 용액의 특성값의 합으로 정의합니다. 이 연구소에서는 같은 양의 두 용액을 혼합하여 특성값이 0에 가장 가까운 용액을 만들려고 합니다. 예를 들어, 주어진 용액들의 특성값이 [-99, -2, -1, 4, 98]인 경우에는 특성값이 -99인 용액과 ..
https://www.acmicpc.net/problem/2003문제 풀이 N개의 수로 된 수열 A[1], A[2], …, A[N] 이 있다. 이 수열의 i번째 수부터 j번째 수까지의 합 A[i] + A[i+1] + … + A[j-1] + A[j]가 M이 되는 경우의 수를 구하는 프로그램을 작성해야합니다. 문제 요약1. 수의 개수와 구할 값을 입력받습니다.2. 수열을 입력받습니다.3. 연속되는 값을 정할 시작값과 끝값을 각각 0으로 초기화합니다. ( 첫번째 인덱스 부터 연속된 합을 구해야 하기 때문에 시작과 끝값을 0으로 하는 것 )4. 연속되는 합을 구해서 입력 받은 m 보다 큰 경우 시작값을 1증가 작을경우 끝값을 1 증가 합니다.5. 원하는 값이 되었을경우 개수를 세어주고 시작과 끝값을 각각 1 증..