일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- unity
- Spring Boot
- express
- mongoDB
- rpg server
- server
- css framework
- react
- SDK upgrade
- Packet Network
- Google Developer API
- screencapture
- critical rendering path
- Camera Movement
- java
- nodejs
- OverTheWire
- spread 연산자
- springboot
- Digital Ocean
- Unity IAP
- linux
- MySQL
- draganddrop
- Unity Editor
- Git
- Camera Zoom
- Google Refund
- --watch
- docker
- Today
- Total
목록Algorithm(c++) (40)
우당탕탕 개발일지
https://school.programmers.co.kr/learn/courses/30/lessons/250135 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 해결 방법맨처음 시작순간에 겹쳐져있다면, answer + 1을 해준다. 0시와 12시일때 겹쳐있을것이다. 이제 시작시간과 끝시간을 초로 변경한다. 1초씩 이동하면서, 1초사이에 시침 혹은 분침과 겹치는 순간이 있는지를 체크한다. 만약 시침,분침,초침이 모두 같은곳에 있다면, answer 을 2가 아니라 1만 올린다. 핵심 1 ) 특정시간에서 시침,분침,초침의 각도 구하기시침은 12시간에 360도이므로, 1초에 1/120 도 움직인다. 분침은 ..
https://school.programmers.co.kr/learn/courses/30/lessons/169198 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 해결 방법핵심 1. 당구 거리는 어떻게 계산할 것인가?당구에서 벽을 맞고 이동하는 경로는 마치 벽을 거울처럼 반사한 후, 직선 경로를 계산하는 방식으로 접근하면 된다. 윗벽(10) 에서 반사되는 것은 위로 같은 거리만큼 이동한 가상의 공을 생각하고, 두 점사이의 거리를 구한다.예제1에서 두 공의 위치는 각각 (3,7), (7,7) 이다. 윗벽을 부딪힌 후 빨간공을 맞춘다고 했을때, 가상의 점 (13,7)까지의 거리를 구한다. 흰공에서 벽 , ..
https://school.programmers.co.kr/learn/courses/30/lessons/135807 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 해결 방법두 배열을 정렬한다. 배열 A 속 숫자가 모두 나누어진다면, 배열 A속 최소숫자보다 작거나 같다는 의미이다.candidates에 후보숫자들을 넣는다. 후보의 범위는 배열 A중 최솟값과 배열 B중 최솟값중 큰 수이다. A로 나누어 떨어져야하는지, B로 나누어떨어져야하는지 정보를 함께 저장해주기 위해 map을 사용한다.이제 배열을 돌면서, candidates 가 여전히 정답일 수 있는지 하나씩 검사한다. 그리고 아니라면 즉시 candi..
https://school.programmers.co.kr/learn/courses/30/lessons/60062 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 해결 방법(실패, 시간초과)가장 많이 걸을 수 있는 친구 순서대로 나열한다.첫 번째 친구부터, 각 지점 (시계, 반시계) 를 모두 돌아보며 완전 탐색을 진행한다.만약 남은 외벽이 없거나, 더이상 친구가 없다면 재귀를 종료한다.#include #include #include #include using namespace std;vector friends;int max_friend;int wall_length= 0;int answer = -1;int..
https://school.programmers.co.kr/learn/courses/30/lessons/92342 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr해결 방법✅ 완전 탐색(DFS)과 백트래킹을 활용한 C++ 풀이✅ 점수 차이를 최대로 만들면서 낮은 점수를 더 많이 맞히는 경우 고려 0점부터 10점까지 11개의 점수대를 탐색하며 라이언이 해당 점수를 가져갈지 말지 결정한다.두 가지 선택이 가능:라이언이 어피치보다 1발 더 맞혀 점수를 가져감라이언이 그 점수를 포기하고 다음 점수대로 이동탐색을 마친 후, 라이언의 점수와 어피치의 점수를 비교하여 최적의 경우를 찾는다.1 ) 점수차이 계산하는 ge..
https://school.programmers.co.kr/learn/courses/30/lessons/12952 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 해결 방법(실패)완전탐색을 진행하면서, 퀸을 놓는다. is_valid() 함수를 놓아서 현재 자리에 퀸을 놓을수 있는지 없는지 검사한다.만약 퀸 개수가 n개까지 놓였다면 answer ++ 를 하고 다음검사를 진행한다.이 방법은 마지막 두 문제에서 시간초과가 발생했다. #include #include #include #include using namespace std;unordered_set queens;int max_queen =0;int ..
https://school.programmers.co.kr/learn/courses/30/lessons/87946 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 해결 방법완전탐색을 진행하다가, 조건에 맞지 않을 경우 되돌아오는 백트래킹을 사용하여 해결한다.1번 던전을 들어가려 해본다. 들어가진다면, play수를 올리고 visisted[1번던전] 을 true로 던진 뒤 다시 do_search()를 진행한다.이상태에서 들어갈 수 있는 던전을 찾아본다 (이미 플레이한 1번 던전을 제외한 나머지 던전을 찾는다) . 있다면 또 visited[2번던전] = true로 바꾼 뒤 다시 do_search() 를 호..
https://school.programmers.co.kr/learn/courses/30/lessons/142085# 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr해결 방법라운드를 하나씩 진행하면서 합 sum을 구해간다.sum이 n보다 커지는 순간이 오면, pq에 있는것중 가장 값이 큰값(pq.top()) 을 하나씩 꺼내면서, sum이 n보다 작아질때까지 티켓을 사용한다. 만약 티켓이 없어서 sum을 n보다 줄이지 못한다면 그 라운드에서 실패한다는 의미이므로, 바로 round를 리턴한다.#include #include #include #include using namespace std;int solu..