일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 레벨2
- 의존성
- HTTP
- 프로그래머스
- Level2
- 우아한세미나
- Paging
- JPA
- JUnit5
- CircuitBreaker
- 우테코
- AOP
- 세션
- MSA
- 트랜잭션
- REDIS
- 스프링부트
- 우아한테크코스
- yml
- AWS
- 프리코스
- 코드리뷰
- 서블릿
- Docker
- Spring Batch
- 자바
- 백준
- 스프링 부트
- 미션
- mock
- Today
- Total
목록알고리즘_프로그래머스 (17)
늘
level.2 문제였는데 문제를 제대로 읽지않아서 시간좀 걸렸다.. 아래가 문제인데 접두어만 보면 되었던 것이었다!!! 생각보다 쉬운걸 혼자 어렵게 생각했으니.. 대부분 비슷한 코드들 인것 같다. #include #include #include #include using namespace std; bool solution(vector phone_book) { bool answer = true; sort(phone_book.begin(), phone_book.end()); for(int i=0; i
level 2였지만 쉬웠던 문제였다. 간단히 방정식만 생각하면 되었다..! (x-2)*(y-2) = yellow 2*x+2*y-4 = brown 아마 이 수식 계산하는게 복잡해서 level2인가..? 싶다..! #include #include #include using namespace std; vector solution(int brown, int yellow) { vector answer; int x, y; y= ((4+brown) + sqrt(pow(4+brown,2) - 8*(2*yellow + 2*brown)))/4; x = (yellow+brown)/y; if(x>y){ answer.push_back(x); answer.push_back(y); }else{ answer.push_back(y);..
백준 저울문제 www.acmicpc.net/problem/2437를 못풀어서 한이 맺혀서 프로그래머스 그리디 문제를 풀었다..!! 2437번: 저울 하나의 양팔 저울을 이용하여 물건의 무게를 측정하려고 한다. 이 저울의 양 팔의 끝에는 물건이나 추를 올려놓는 접시가 달려 있고, 양팔의 길이는 같다. 또한, 저울의 한쪽에는 저울추들만 놓 www.acmicpc.net level2 치고는 쉬운 그리디 문제였다. 덕분에 그리디 자신감도 다시 찾았다!! *그리디 여러 문제 풀어보면서 그리디는 은근 아이디어 싸움(?) 인것 같다. 난이도가 높아질수록.. #include #include #include using namespace std; int solution(vector people, int limit) { in..
요즘 그리디가 너무 안 풀리는것 같다 ㅠㅠ 마지막 A의 위치에 따라 조이스틱 좌우 방향을 결정 짓는 부분에서 오래걸렸다... 결국 블로거님을 참고하여서 경우의 수를 알았다.. 4가지 경우의 수 ▶ (): 뒷부분이 A인 경우 최소 Ex) BBBBAA이면 오른쪽으로 3번만 이동하면 됨 ◀ :앞부분이 A인 경우 최소 Ex) AAAAABBB이면 왼쪽으로 3번만 이동하면 됨 ▶◀ : 중간에 A가 많은 경우 중 앞부분에 A가 아닌 알파벳이 더 적은 경우 Ex) BBBAAAAAAAAABBBBB이면 오른쪽으로 2번, 왼쪽으로 2 + 5번. 즉, 2 * 2 + 5 = 9번만 이동하면 됨 ◀▶ : 중간에 A가 많은 경우 중 뒷부분에 A가 아닌 알파벳이 더 적은 경우 Ex) BBBBBBBAAAAAAAAABBB이면 왼쪽으로 ..
간단히 보이는 문제였는데 예외처리를 하는데에서 시간이 조금 걸렸다. (0으로 나눈다던가...) 그리고 풀긴 풀었지만 코드가 조금 맘에 안들긴 하다. 조금 난잡한 느낌(?)..! 하지만 처음으로 맥북으로 코딩해보아서 좋았다..ㅋㄷㅋㄷㅋㄷㅋㄷㅋㄷㅋㄷ #include #include #include #include #include using namespace std; int arr[501]; bool compare(const pair &a, const pair &b){ if(a.first == b.first){ return a.second b.first; } vector solution(int N, vector stages) { vector answer;..
요즘 Level.2 문제도 거뜬히 해결되는것 같아서 기분이 좋다 ㅎㅎ 내가 생각한 알고리즘은 순서대로 검사하되 만약 검사하는 문자가 안나온다면 skill을 돌면서 skill내의 문자가 이미 나왔는지 확인하는 방식이었다. 정말 오랜만에 1코1통을 했다...!(한번에 코딩하고 한방에 통과!) #include #include using namespace std; int solution(string skill, vector skill_trees) { int answer = 0; vector v; for(int i=0; i