일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Kafka
- 물채우기
- dfs
- 연결요소
- boj #19237 #어른 상어
- 소프티어
- Docker
- 처우산정
- 13908
- softeer
- upper_bound
- BFS
- 백트래킹
- msSQL
- 경력
- incr
- 백준
- compose
- 기술면접
- 매개변수탐색
- 오퍼레터
- 이분탐색
- 처우협의
- 파라메트릭
- 퇴사통보
- 6987
- BOJ
- 성적평가
- @P0
- OFFSET
- Today
- Total
목록알고리즘 문제/AlgoSpot (17)
기술 블로그
https://algospot.com/judge/problem/read/TICTACTOE 책을 보아도, 복잡했다. 갑자기 return 값에 -1이 곱해지는 경우도 있기 때문이었다. 쉽게 말해, canWin()은 이번 차례인 사람이 이길 수 있으면 1을, 비기면 0, 지면 -1을 반환한다. 참고로, bijection()와, cache 배열이 없어도 된다. 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021..
https://algospot.com/judge/problem/read/FENCE 분할 정복 문제이다. 책을 참고하였다. 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586#include #include #include #include #include #include #include #include #include #include using namespace std; int solve(int left, int right, vector &v){ // 기저 사례 : 나무..
https://algospot.com/judge/problem/read/QUADTREE# 엄청 복잡하게 생각했었는데, 책에서는 아주 간단한 코드로 구현했다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960#include #include #include #include #include #include #include #include #include #include using namespace std; string s; // 책 194pstring Reverse(string::iterator &itr) // string::iterator itr 가 아니다. ..
https://algospot.com/judge/problem/read/CLOCKSYNC 어려웠다. 핵심은 4번 누르는 상황이나 안 누른 상태나 똑같다. 책을 참고해서 구현한 코드와 다른 분의 코드를 참고하여 구현한 코드 2개 첨부한다. 다시 풀어보자. 참고로, AlgoSpot에서 'clock'이라는 변수명을 쓰고 제출하면 컴파일 에러가 뜬다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104..
https://algospot.com/wiki/read/JMBook_%EB%AC%B8%EC%A0%9C%EB%93%A4_%EB%A7%81%ED%81%AC 위의 링크 사이트에 업데이트 안 된 문제들도 몇 있다. 그러나, AlgoSpot 사이트 검색하면 있다. 책 : 프로그래밍 대회에서 배우는 알고리즘 문제해결 전략
https://algospot.com/judge/problem/read/BOARDCOVER 구현을 하고, 계속 어디서 틀렸나 봤더니 백트래킹 함수 안에 이중 for문으로 계속 돌고 있었다. 행과 열에 관한 이중 for문이 안에 있으면 안 된다. 다 채워지는 그 판에 대한 경우의 수가 '중복'되어 더해지기 때문이다. 참고로, coverType 배열은 아래 그림과 같다.노란색 별 ★ = (0, 0)이고, (행, 열) = (y, x)이다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081..
https://algospot.com/judge/problem/read/PICNIC 요즘 공부하고 있는 책을 참고하면서 코드를 구현하였다. 계속 답이 틀려서, 고민했었는데 now를 전역 변수로 선언해버렸었다. 이렇게 되면, 50번 째 이후에 영향을 주기 때문에 당연히 답은 틀리다. 참고한 책 : [프로그래밍 대회에서 배우는 알고리즘 문제해결전략 1, 157p] 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384#include #include #include #include ..
https://algospot.com/judge/problem/read/BOGGLE# 처음에 백트래킹 문제인줄 알고, PRETTY 하나만 해봤는데도 시간 초과가 발생했다. 아예 잘못 짠 코드인가보다. 그래서, BFS로 될 것 같아서 해봤더니 한 줄로 이어서 만들 수 없는 경우의 수가 있기 때문에 불가능했다. 분명 재귀함수를 써야하는데, 구현을 잘 못 해서, 다른 분의 코드를 참고하였다. 좀 더 구현에 있어서 공부를 해야겠다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838..