목록Algorithm/투포인터 (12)
Mini

https://www.acmicpc.net/problem/2003 2003번: 수들의 합 2첫째 줄에 N(1 ≤ N ≤ 10,000), M(1 ≤ M ≤ 300,000,000)이 주어진다. 다음 줄에는 A[1], A[2], …, A[N]이 공백으로 분리되어 주어진다. 각각의 A[x]는 30,000을 넘지 않는 자연수이다.www.acmicpc.net1. 주의사항v.push_back(0);마지막에 0을넣어야 e++되면서 0을 가르킴 => out of index 방지 2. 전체코드#include using namespace std;typedef long long ll;ll n, m,ret,temp;vector v;int main() { ios::sync_with_stdio(0); cin.tie(0); cin ..

https://www.acmicpc.net/problem/1644 1644번: 소수의 연속합첫째 줄에 자연수 N이 주어진다. (1 ≤ N ≤ 4,000,000)www.acmicpc.net1. 의사코드 및 전체코드// Authored by : BaaaaaaaaaaarkingDog// Co-authored by : -// http://boj.kr/ecc7d7f58ceb4679a1bb67adbb79088c#include using namespace std;const int MXN = 4000002;vector seive(MXN, true);//1.모두소수라고 가정vector primes;int main() { ios::sync_with_stdio(0); cin.tie(0); for (int i = 2; i *..
https://www.acmicpc.net/problem/1806 1806번: 부분합 첫째 줄에 N (10 ≤ N st~en+1로 만드는 것) 2. total보다 S가 작으면, total 변수에 a..

https://www.acmicpc.net/problem/2230 2230번: 수 고르기 N개의 정수로 이루어진 수열 A[1], A[2], …, A[N]이 있다. 이 수열에서 두 수를 골랐을 때(같은 수일 수도 있다), 그 차이가 M 이상이면서 제일 작은 경우를 구하는 프로그램을 작성하시오. 예를 들어 www.acmicpc.net 1. 의사코드 /* * 투포인터 * 1.정렬 * 2.for(st=0~n) * 3. while(en범위쳌 && 조건만족안하면) en++ * 4. 정답갱신 */ en을 1칸씩 우측으로 옮겨가면서 탐색한다. 2. 전체코드 #include using namespace std; int n, m; int a[100004]; int ret = 0x7fffffff; /* * 투포인터 * 1..