전체 글
-
알고리즘 정리myCode/Baekjoon Online Judge 2016. 11. 6. 16:31
출처 - http://gooddaytocode.blogspot.kr/2016/04/blog-post_27.html 해당 블로그 좌측 메뉴에 다른 자료도 많음 알고리즘 정리 알고리즘완전 탐색(Exhaustive Search)가능한 경우를 모두 구해서 문제의 해결 방법을 찾는 것실행시간이 너무 길어 제한 시간 내에 문제를 해결할 수 없는 경우가 많다Brute-force searchN 중 반복문을 이용하는 방법큐를 이용하는 방법순열을 이용하는 방법 (재귀 호출로 가능)재귀 호출을 이용하는 방법완전 탐색을 구현하기 용이다른 여러 알고리즘에서 사용코드가 간결하고 구현이 직관적임특징: 쉬운 문제를 어렵게 풀어야 한다특징: 어려운 문제를 쉽게 풀 수 있다설계1. 문제해결을 위해 수행해야 하는 작업을 2. 유사한 형태..
-
xor 쿼리 (배열버젼)카테고리 없음 2016. 11. 1. 22:29
시간초과가 뜬다 부들부들.. 잦은 push_back과 erase가 문제일거라 판단.. 처음부터 arr[500000]로 선언해놓아버리자. // Example program#include #include #include using namespace std; int quick_selection(int a, int n, int* ArrList, int k); int main(){ int arr[500000]; int index = 0; int queryNum; int totalNum; int x,L,R; cin >> totalNum; for (int i=0; i> queryNum; if (queryNum == 1) { cin >> x; arr[index] = x; index++; } else if (queryN..
-
k-th smallest selection algorithm (k번째로 작은 숫자를 찾는 알고리즘)myCode/Baekjoon Online Judge 2016. 11. 1. 20:48
http://hackability.kr/entry/Quick-Selection%EC%9D%84-%EC%9D%B4%EC%9A%A9%ED%95%9C-On-%EC%84%A0%ED%83%9D-%EB%B0%A9%EB%B2%95 보통 배열안에서 k번째로 작은 숫자를 구하라라고 하면sort 한 후에 arr[k] 이런식으로 찾는데 O[nlogn]의 매우 비효율적인 방법이다. worst case가 O[n]의 방법을 소개한다.
-
xor 쿼리 (벡터버젼)myCode/Baekjoon Online Judge 2016. 11. 1. 20:20
스타벅스 쿠폰을 위한 위대한 도전이 시작된다. 11.1 시간초과가 뜬다. // Example program#include #include #include using namespace std; int quick_selection(int a, int n, vector ArrList, int k); int main(){ vector v; v.reserve(500000); vector::iterator iter; int queryNum; int totalNum; int x,L,R; cin >> totalNum; for (int i=0; i> queryNum; if (queryNum == 1) { cin >> x; v.push_back(x); } else if (queryNum == 2) { cin >> L >>..
-
XOR 쿼리 [list 버젼]myCode/Baekjoon Online Judge 2016. 11. 1. 20:12
// Example program#include #include #include using namespace std; int main(){ list qList; list::iterator iter; int queryNum; int totalNum; int x; cin >> totalNum; for (int i=0; i> queryNum; if (queryNum == 1) { cin >> x; qList.push_back(x); } else if (queryNum == 2) { } else if (queryNum == 3) { } // display elements for (iter = qList.begin(); iter != qList.end(); ++iter){ cout
-
-
Life goes onTrivials 2016. 10. 2. 21:04
병장을 달았다. 별로 달라지는 건 없고 7개월 남았다는 암울한 현실밖에 없지만서도.. 그래도 계단 한걸음은 딛고 올라왔다는 걸로 위로를 해야겠다. 남은 계단은 몇개야 흑.. 입대하고 한 백만번째 슬럼프가 찾아 온 것 같다. 공부하던 것도, 만들던 프로젝트도 하나도 안된다. 14일까지 내야하는데... 또 몰아서 개판으로 완성해내겠구먼.. 요새들어 사고방식이 삐딱하게 뒤틀린 걸 자주 느낀다. 긍정적으로, 충분히 그럴수도있는건데, 도저히 용서가 안되고, 견딜 수가 없고, 미쳐버릴 것 같다. 나락 끝까지 떨어져봐야 나오는 모습이 그 사람의 진짜 모습이라는데, 나는 원래 이렇다고 생각하니 역겹다. 과거에 계속 머물러있다. 2015년 초의, 그 시간에서 헤어나오지 못하고 있다. 얼룩지고 뒤틀린 과거의 시간은, 새로..