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

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/14405 14405번: 피카츄 피카츄는 "pi", "ka", "chu"를 발음할 수 있다. 따라서, 피카츄는 이 세 음절을 합친 단어만 발음할 수 있다. 예를 들면, "pikapi"와 "pikachu"가 있다. 문자열 S가 주어졌을 때, 피카츄가 발음할 수 있는 문 www.acmicpc.net 쉬어가는 문제! 코드를 천천히 보면서 해결해보자! 참고로 str.substr(st, ed) 함수를 사용하면 좀 더 정확하게 풀 수 있다! 그냥 _tmp라는 임시 스트링에 문자를 하나씩 받으면서 pi, ka, chu를 받으면 문자열을 비우는 방식으로 해결했다! #include using namespace std; int main(){ ios::sync_wit..

https://www.acmicpc.net/problem/11723 11723번: 집합 첫째 줄에 수행해야 하는 연산의 수 M (1 ≤ M ≤ 3,000,000)이 주어진다. 둘째 줄부터 M개의 줄에 수행해야 하는 연산이 한 줄에 하나씩 주어진다. www.acmicpc.net 1) 집합의 개념은 비트마스킹으로 생각하면 된다. 즉 S = 0x00000 ~ 0xFFFFF 까지 가능. 간만에 푼 진짜 쉬웠던 문제!! 크게 설명할 것 없이 비트마스킹인 점을 생각하고 문제를 접근하면 쉽다! 000..0000 ~ 1111..11111 까지 생각하여 그 숫자의 존재를 있다면 1, 없다면 0으로 표시하여 진행하면 된다!! ( 16진수로 적으면, 0x00000 ~ 0xFFFFF ) 바로 코드를 보면서 이해해보자! che..

https://www.acmicpc.net/problem/1094 1094번: 막대기 지민이는 길이가 64cm인 막대를 가지고 있다. 어느 날, 그는 길이가 Xcm인 막대가 가지고 싶어졌다. 지민이는 원래 가지고 있던 막대를 더 작은 막대로 자른다음에, 풀로 붙여서 길이가 Xcm인 막대 www.acmicpc.net ??? 좀 충격이었던 문제였다,,,, 문제의 의미를 진짜 곱씹어보며 잘 살펴보자. 특히 테스트케이스에서 답이 나오는 과정을 잘 봐보자. 일단 내가 푼 코드부터 보여주겠다. 문제가 정말 쉽기 때문에 그냥 보고 읽으면서 코드를 짜도 된다. #include using namespace std; int X; vector sticks; void go(){ int sum = 0; for(auto i : ..

https://www.acmicpc.net/problem/14890 14890번: 경사로 첫째 줄에 N (2 ≤ N ≤ 100)과 L (1 ≤ L ≤ N)이 주어진다. 둘째 줄부터 N개의 줄에 지도가 주어진다. 각 칸의 높이는 10보다 작거나 같은 자연수이다. www.acmicpc.net 1) 2차원 배열을 2개 만든다. 한가지는 대칭이동 시켜서 만든다. 2) 지금까지 지나온 같은 높이의 칸의 개수를 세준다.(cnt) 3) 만약 다른 높이의 칸을 만난다면, 3-1) cnt >= L 이고 +1 칸 차이이면 cnt = 1로 해준다.(오르막경사) 3-2) cnt >= 0 이고, -1 칸 차이이면, cnt = -L+1로 해준다 (내리막 경사) 3-3) 위에 해당하지 않으면 break 해주고 해당 열/행의 탐색을..

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://..