본문 바로가기

분류 전체보기129

백준 2252번 : 줄 세우기 문제 링크 : www.acmicpc.net/problem/2252 내 풀이(2021.2.10.) : 위상 정렬 #include #include #include using namespace std; int N, M; int indegree[32001]; vector pointing[32001]; vector ordered; void topology_sort() { queue q; for (int i = 1; i > N >> M; for (int i = 0; i > a >> b; pointing[a].push_back(b); indegree[b]++; } topology_sort(); for (int i = 0; i < ordered.size(); i++) {.. 2021. 2. 10.
URL query parameter에 '+(plus)' 기호 사라짐 encodeURIComponent로 해결 또는 '%2B'로 대체 stackoverflow.com/questions/6855624/plus-sign-in-query-string * '%' 기호는 문자열 전체를 디코딩 시켜버린다. -> '%25'로 전달 * 단, '%'와 '+'를 동시에 변환할 때는, '%'를 먼저 처리하고 '+'를 처리해야 한다. (그렇지 않으면 '%2B'의 '%'도 같이 변환되기 때문이다.) * ' (apostrophe) 즉 따옴표 문자도 문제가 된다. 이는 \'\'로 처리한다. 예시) goal = goal.replace(/%/gi, '%25'); goal = goal.replace(/\n/gi, ' '); goal = goal.replace(/\+/gi, '%2B'); goal = go.. 2021. 2. 8.
백준 1647번 : 도시 분할 계획 문제 링크 : www.acmicpc.net/problem/1647 내 풀이(2021.2.6.) : 최소 신장 트리 #include #include #include using namespace std; typedef tuple tp; priority_queue pq; int p[100001]; int find(int n) { if (p[n] != n) p[n] = find(p[n]); return p[n]; } void union_(int a, int b) { a = find(a); b = find(b); if (a < b) p[b] = a; else p[a] = b; } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL.. 2021. 2. 6.
백준 1717번 : 집합의 표현 문제 링크 : www.acmicpc.net/problem/1717 내 풀이(2021.2.4.) : 유니언 파인드 #include using namespace std; int parent[1000001]; int find(int x) { if (parent[x] != x) parent[x] = find(parent[x]); return parent[x]; } void union_(int a, int b) { a = find(a); b = find(b); if (a k >> a >> b; if (.. 2021. 2. 4.