gumgood blog

ACM-ICPC Seoul Nationalwide Internet Competition 2018

https://www.acmicpc.net/category/detail/1935 A. BOJ 16282 Black Chain 첫 번째 접근법은 ‘n개의 고리가 연결된 체인에서 m개의 고리를 풀 때 1g부터 ng까지 모든 무게를 생성할 수 있는지’ 여부를 판단하는 함수 f를 만들어 풀어야 할 고리의 최소값을 binary search로 찾는 것이었습니...

COCI 2009/2010 contest #2 개인 풀이

COCI(Croatian Open Competition in Informatics) 2009/2010 contest #2 https://www.acmicpc.net/category/detail/84 1. BOJ 2914 저작권 앨범의 수록곡의 개수 A와 수록곡 당 멜로디의 개수의 평균값 I가 주어질 때, 적어도 몇 개의 멜로디가 있는지 묻는다. ...

Mapping Permutation to Integer

원문 : https://stackoverflow.com/questions/1506078 permutation of n elements가 있을 때, integer로 mapping하는 방법에 대해 설명한다. n!의 permutation이 있을 수 있고, 이를 n!가지의 정수에 1:1 mapping하는 것이 목적이다. n개의 원소로 이루어진 permut...

COCI 2009/2010 contest #1 개인 풀이

COCI(Croatian Open Competition in Informatics) 2009/2010 contest #1 https://www.acmicpc.net/category/detail/83 1. BOJ 2920 음계 음계가 1 2 3 4 5 6 7 8이면 ascending, 8 7 6 5 4 3 2 1이면 descending을 출력하고,...

Mac OS에서 bits/stdc++.h 헤더 사용하기

bits/stdc++.h는 표준 라이브러리 전체를 모두 포함시키는 헤더입니다. 그래서 complie time에는 상당히 안 좋습니다. 반면에 헤더 하나만 포함하면 되기 때문에 빠르고 간결한 코드 작성이 가능합니다. 알고리즘 대회에서 중요한 것은 빠르고 정확한 코드작성, 실행 시간이기 때문에  채점서버가 이 기능을 지원하는 g++ 컴파일러를 쓴다면...

Segment Tree (+ Lazy Propagation) 코드 최적화

원문 : https://codeforces.com/blog/entry/18051 Segment tree with single elment modifications Segment tree는 한 배열에서 몇 번의 변경이나 연속된 부분에 대한 query들을 처리할 때 사용한다. 첫번째 예로 다음 두 명령어를 생각해두자.  배열에 있는 한...

Range Queries와 Modifications over Array의 Non-recursive 구현

양의 정수 $N$이 2의 지수라고 하자. 길이가 $N$인 배열 $a$의 각 원소를 $a_i$라고 하자$(i \in [0, N-1])$. 어떤 원소 $a_i$를 수정하는 규칙이 있을 때, 이것을 $a_x$와 $a_y$ 사이 모든 원소들에 적용시킨다고 생각하자. 이것을 Range modification이라고 부를 것이다.  결합법칙(Associative...

COCI 2006/2007 contest #1 개인 풀이

1. BOJ 2052 나머지 각 나머지에 대해 marking 해놓는다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #include<cstdio> bool chk[42]; int main(){ for(int i=0;i<10;++i){ int t; scanf("%d...

1 2 3