일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- nullif
- sql
- CREATE TABLE
- Andrew Ng
- AVLTree
- timestamp
- COALESCE
- 시퀄
- 자료구조
- BFS
- 최소공배수
- postgresql
- ML
- 너비우선탐색
- Advanced SQL
- 백준
- 알고리즘
- BST
- C++
- coursera
- pgadmin
- 최대공약수
- 과제
- udemy
- 개발
- self join
- Machine Learning
- 깊이우선탐색
- 데이터베이스
- 유데미
- Today
- Total
목록알고리즘 (13)
승1's B(log n)
이 요상한 큐 문제는 각 요소마다 중요도가 있어서, 자기보다 더 중요한 요소가 존재하면 무조건 맨 뒤로 이동시키게 된다. 그래서 지정된 요소가 몇 번째로 출력이 되는가를 알아내는 프로그램을 작성하는 것이 이 문제의 목적이 되시겠다. 문제를 풀기 전에 고려했던 것은 어떤 컨테이너를 쓸 지였는데, 일반 queue를 쓰자니 중요도를 상호간 비교할 수가 없을 것 같아서 결국엔 앞뒤 push, pop이 되고 iterator를 사용할 수 있는 deque를 사용하기로 했다. #include #include using namespace std; int main(void) { int n; scanf("%d", &n);//총 몇 번을 수행할 것인지 for(int i = 0; i < n; i++) { deque dq;//덱..
소수이면서 팰린드롬인 수 중에서, 가장 작은 수를 구하는 프로그램을 작성하는 것이 이번 문제 되시겠다. 그럼 바로 코드로 가보겠습니다. #include #include #include #include using namespace std; bool sosu(int num) { if (num n; int i = n; while(true) { if (sosu(i)) { string str_rev = to_string(i); reverse(str_rev.begin(), str_rev.end()); if(str_rev == to_string(i)) { printf("%d\n", i); b..
알고리즘에서 엄청나게 유명한 하노이의 탑 문제이다. 엄청나게 유명한 것에 비해서 난이도가...그렇게 높진 않고 랭크도 높아서 조금 의아. 암튼 입력과 출력은 이래야 된다. 구현은 C++로 해보았다. 재귀함수 형식으로 구현하면 쉽게 풀린다. #include #include using namespace std; void HanoiTower(int num, int from, int by, int to){//from에 있던 num개의 원반을 by를 거쳐 to로 이동시키는 함수 if (num == 1){//이동해야 할 원반의 수가 1개인 경우 그냥 옮기면 됨. 그리고 탈출 조건이 됨. printf("%d %d\n", from, to); } else{ HanoiTower(num-1, from, to, by); pr..