알고리즘/1주일 1문제 12

2021년 3분기

프래머스 - 다단계 칫솔 판매 더보기 #include #include #include using namespace std; constexpr int PRICE = 100; vector solution(vector enroll, vector referral, vector seller, vector amount) { vector answer; answer.resize(enroll.size(), 0); unordered_map IDs; int ID = 0; for(auto en : enroll) IDs[en] = ID++; vector parents(enroll.size()); //추천인을 다단계 tree상의 부모로 간주 for(int i=0;i> m; BufferedFenwickTree bft(n,m); f..

2021년 2분기

백준 9248 - Suffix Array (문자열 - 맨버 마이어스 알고리즘) 더보기 #include #include #include #include //https://www.acmicpc.net/problem/9248 - Suffix Array //종만북보고 재현함 using namespace std; //#define DEBUG #ifdef DEBUG void DebugSuffixArr(const vector & suffixArr, const string & s, int t = -1) { cout 음의 사이클 없음으로 최단경로 완성 return TryRelaxEdges();// 간선 완화를 다 했는데 또 완화가 된다 => 음의 사이클이 있다. } bool TryRelaxEdges() { int rel..