일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- BOJ14889
- sw expert academy
- Crossfit
- BOJ
- 15662
- 서울에서경산까지
- D1
- 1781
- 재귀
- 브루트포스
- Python
- 4811
- 14863
- 크로스핏
- 1로만들기2
- 동적프로그래밍
- 스택
- 15353
- 재귀함수
- dart
- 회전하는큐
- C++
- 그리디
- 백준
- spring boot
- Flutter
- 삼성
- 26008
- 해시해킹
- DP
- Today
- Total
목록BOJ (31)
곧죽어도 콛잉

https://www.acmicpc.net/problem/15353 15353번: 큰 수 A+B (2) C++17, C11, C99, C++98, C++11, C++14, C99 (Clang), C++98 (Clang), C++11 (Clang), C++14 (Clang), C11 (Clang), C++17 (Clang) www.acmicpc.net 1) 일반적인 더하기가 불가능하니 BigInt 혹은 String으로 덧셈을 구현한다. 숫자를 잘 보자. A,B의 최대값이 10의 10000승이다!! 덧셈을 직접 구현해주면 된다. 이런 문제를 풀때마다 뭔가 현타가 가끔씩 온다. 아이디어가 생각나지 않으면 "하.... 이게 뭐야.... 나는 덧셈 뺄셈도 못하는 사람이었네... " 하면서 말이다 덧셈의 원리를 생..

https://www.acmicpc.net/problem/1987 1987번: 알파벳 세로 R칸, 가로 C칸으로 된 표 모양의 보드가 있다. 보드의 각 칸에는 대문자 알파벳이 하나씩 적혀 있고, 좌측 상단 칸 (1행 1열) 에는 말이 놓여 있다. 말은 상하좌우로 인접한 네 칸 중의 한 칸으 www.acmicpc.net 1) 1-1) 만약 채워졌다면, 그 숫자를 확인한 후 개수를 세준다. 1-2) 만약 안채워졌다면, 사각형을 9등분한 후 각 사각형마다 다시 1) 과정을 반복한다. 이 문제도 역시 아래 문제를 풀고오면 이해가 더 쉬워진다!! https://die-will-coding.tistory.com/38#comment14785555 [그래프 / BOJ 1325 / C++] 효율적인 해킹 https://..

https://www.acmicpc.net/problem/14620 14620번: 꽃길 2017년 4월 5일 식목일을 맞이한 진아는 나무를 심는 대신 하이테크관 앞 화단에 꽃을 심어 등교할 때 마다 꽃길을 걷고 싶었다. 진아가 가진 꽃의 씨앗은 꽃을 심고나면 정확히 1년후에 꽃이 피므 www.acmicpc.net 1) 빈칸 중 3개를 뽑는 경우를 모두 찾는다. 2) 각 경우마다 씨앗을 심는다. 그리고 꽃이 폈을때(즉, 상하좌우를 확인할때) 조건에 맞는지 확인한다. 3) 만약 확인한 경우가 잘못됐다면, 다른 경우로 넘어가고, 아니라면 총 비용을 계산해서 최소값인지 확인한다. 이 문제는 전형적인 완전 탐색 문제이다! 이 문제의 시간복잡도는 아무리 커도 20만을 넘기지 않는다. (100 combination ..

https://www.acmicpc.net/problem/2529 2529번: 부등호 여러분은 제시된 부등호 관계를 만족하는 k+1 자리의 최대, 최소 정수를 첫째 줄과 둘째 줄에 각각 출력해야 한다. 단 아래 예(1)과 같이 첫 자리가 0인 경우도 정수에 포함되어야 한다. 모든 입력 www.acmicpc.net 1) 0부터 9까지의 순열을 구한다. 2) 구한 순열의 모든 경우의 수를 부등호 사이에 넣어본다. 3) 2)에서 통과한 경우를, long으로 변환한 후 최소값인지 최대값인지 판별한다. 4) 모든 경우의수를 확인하면 최소값과 최대값을 출력한다. 진짜.. 쉬웠는데.. 헛짓거리를 많이했다... 문제 풀기전에 우리가 원하는 결과값의 데이터타입을 꼬오오오옥 확인하자 아무것도 모르고 atoi(s.c_str..

https://www.acmicpc.net/problem/14497 14497번: 주난의 난(難) 주난이는 크게 화가 났다. 책상 서랍 안에 몰래 먹으려고 숨겨둔 초코바가 사라졌기 때문이다. 주난이는 미쳐 날뛰기 시작했다. 사실, 진짜로 뛰기 시작했다. ‘쿵... 쿵...’ 주난이는 점프의 파 www.acmicpc.net 1) 상하좌우로 dfs를 시행한다. (총 4번의 dfs) (참고로 x,y,x2,y2 input 모두 (1,1) ,,, (M,N)으로 들어오므로 -1 해줘야한다..) 2) 1번의 점프가 끝났으므로, res를 업데이트 3) 만약 dfs에서 #를 찾았다면(chk==1) res를 출력하고 종료. 4) 아직 #을 못찾았다면, 다시 dfs를 수행해야하므로 사용된 vis를 0으로 업데이트 해준다. ..

https://www.acmicpc.net/problem/15686 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net 1) 집, 치킨집의 좌표를 담는 배열을 선언한다. 2) 치킨집의 개수 중에 M개를 뽑아내는 조합 함수를 구성한다. 3) 뽑은 M개를 통해 도시 치킨 거리를 구한다. 이때 최종 결과값 res는 min 함수로 업데이트해준다. 이 문제는 시간 복잡도를 계산해보면 그렇게 크지 않다. 즉 완전 탐색으로 해결 가능하다! 복잡하게 생각할 것 없이 문제 조건 그대로 구현해주면 된다. 집의 ..