일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 힙덤프
- Union-find
- Java
- math
- Calendar
- 스프링부트
- 스택
- map
- deque
- javascript
- priority_queue
- List
- spring boot
- 리소스모니터링
- html
- string
- union_find
- JPA
- dfs
- date
- GC로그수집
- scanner
- alter
- sql
- NIO
- 큐
- BFS
- CSS
- set
- Properties
- Today
- Total
목록알고리즘 (178)
매일 조금씩
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/dumYBo/btqx9WRIKDI/EVE4GFckysjhH81dzmEuH1/img.png)
string, vector, template을 공부하면서 풀어본 문제 중 도움이 많이 된 문제 vector와 template에 대한 개념이 안잡혀 있는 상태에서 푸느라 많은 어려움을 겪다가 구글링 후 코드를 참고 하였다. 1. string 타입의 vector를 5*M +1개 입력 받음. 2. 행에 창문의 유,무 확인을 위해 bool window를 활용. 3. 창문일 때 블라인드 상태를 체크하기 위해 k를 사용. 4. 해당 창문 밖(다음 창문 직전)으로 가기위해 j+=4를 해야하나, for 문의 j++를 고려하여 j+=3을 함. 5. 창문이 있는 행을 체크후, 행 밖(다음 창문 바로 윗줄)으로 가기 위해 i+=4를 해야하나, 4번의 이유로 i+=3을 함. 6. ' * '일 땐, 다음 몇행이 ' * '인지 ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cbDXPf/btqx3UAJ5wx/gV6J7GRnRGvzUrRKUgBza0/img.png)
가장 적은 갯수를 구하기 위해선 5킬로그램 봉지를 먼저 넣어야한다. 이때, 5킬로그램 봉지가 들어갔을때 나머지 킬로그램을 3킬로그램 봉지가 채우지 못할때를 조심해야한다. 5킬로그램 봉지의 수는 N킬로그램에 들어갈 수 있는 5킬로그램봉지의 최대갯수(N/5)를 넘지 않는다는 가정하에 5킬로그램 봉지의 수를 하나씩 늘이면서 나머지 킬로그램을 3킬로그램 봉지가 채울 수 있는지 확인한다. #include using namespace std; int main() { int N; cin >> N; if (N 5000) { cout
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bjlpdN/btqxZTCm6WL/XnDJo8ZS9CA7uWDUdXvHJ1/img.png)
string으로 입력받은 숫자 더하기 2가지 과정이 필요하다. 1. string으로 하나씩 입력된 숫자들을 하나로 묶기 - substr() substr(시작위치) substr(시작위치, 개수) 2. 묶은 숫자를 int로 바꾸기 - stoi() stoi => string to int #include #include using namespace std; int main() { string s; string t; int sum = 0, num = 0; cin >> s; for (int i = 0; i < s.size(); i++) { if (s[i] == ',') { sum += stoi(t); t = ""; } else { t += s[i]; } } cout
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/EN2bq/btqxYWEG3HP/Pdh2jzg6nzU7okzDABZKzk/img.png)
별찍기를 1번부터 9번까지 마스터한 후 드디어 익숙하지 않은 출력형태에 마주하게 되었다. 예제를 통해 규칙을 유추하고 코딩을 한다. 입력은 항상 3의 제곱꼴이라는 조건이 있다. 출력형태를 보면 n을 입력하였을 때 첫번째 줄 부터 n번째 줄까지 출력하는 형태이며 지금부터 규칙을 살펴보도록 한다. 출력형태는 대칭구조를 이루므로 행, 열이 동일 조건을 갖는다고 하는것이 수월할 것으로 판단된다. 행을 i, 열을 j 라고 했을 때 i와 j는 0~n-1의 숫자를 갖는다. 그중 빈칸이 출력되는 칸은 두가지 조건 중 하나 이상 해당 된다. [조건] 1) i와 j가 모두 3으로 나누었을 때 나머지가 1이다. 2) i와 j가 모두 가장 가까운 3의 제곱꼴로 나누었을 때의 몫이 1이다. ex) i = 9, j = 13 일때..