flow-vector
BOJ 9375 패션왕 신해빈
PS/BOJ 2023. 2. 8. 11:35

문제 링크 https://www.acmicpc.net/problem/9375 시간, 공간 제한 시간 : 1초 공간 : 128 MB 문제 접근 방향 - 경우의 수 문제라고 생각하고 접근을 하였는데 같은 카테고리에 몇개가 들어 있는지만 중요하다는 생각을 하였음. - key value 자료 구조 필요하다고 생각함 map - 조합을 통해 문제를 해결하려고 생각하였는데 막혔음. - 아무것도 입지 않았을 때를 경우에 수에 추가를 하면 쉽게 풀 수 있다는 것을 풀이를 보고 알게됨 - 모든 경우의 수에서 아무 것도 입지 않았을 때 경우의 수 1을 빼주면 답이됨 #include #include using namespace std; int main(void) { ios::sync_with_stdio(0); cin.tie(..

BOJ 6064 카잉 달력
PS/BOJ 2023. 2. 8. 11:07

문제 링크 https://www.acmicpc.net/problem/6064 시간, 공간 제한 시간 : 1초 공간 : 256mb 문제 접근 방향 - M, N 이 주어 졌을 때 마지막 해는 M과N의 최소 공배수 라는 것을 파악함 - 최소 공배수와 최대 공약수를 어떻게 구하는지 찾아 봄 // 유클리드 호제법을 사용한 최대 공약수 찾기 int gcd(int a, int b) { if (b == 0) return a; return gcd(b, a%b); } // 최소 공배수 // a x b = gcb(a, b) x lcm(a, b) // lcm = a /gcb * b int lcm(a, b) { return a / gcb(a, b) * b; } - 라면 어떤 해를 M으로 나눴을 때 x가 남고 N으로 나눴을 때 ..

BOJ - 9996
PS/BOJ 2023. 2. 1. 11:59

문제 링크 https://www.acmicpc.net/problem/9996 시간, 공간 제한 시간 : 1초 공간 : 128MB 초기 문제 접근 방향 문자열 파싱 문제라고 생각하고 c++ string 다루는 방법을 공부해야 겠다고 생각 string 내에서 특정 문자를 찾는 method : find string 내에서 특정 인덱스 범위의 문자열 추출 : substsr * 가 맨앞이나 맨뒤에 올수 없기 때문에 * 기준 앞뒤 문자열을 추출하여 저장 입력받은 문자열의 prev 부분과 last 부분을 저장한 문자열과 비교해서 같으면 ok 아니면 no 문제 접근 다른 방향

BOJ - 2309 일곱난쟁이
PS/BOJ 2023. 1. 18. 15:22

문제 링크 https://www.acmicpc.net/problem/2309 2309번: 일곱 난쟁이 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다. www.acmicpc.net 시간, 공간 제한 - 시간 제한 : 2초 - 메모리 제한 : 128MB 초기 문제 접근 방향 1. 입력이 9이고 시간제한이 2초 이므로 모든 경우의 수를 탐색할 때 시간초과에 걸리지 않을 수 있겠다고 생각 2. 모든 경우의 수의 경우 조합으로 알 수 있음 9개 중 순서에 상관없이 7개를 뽑고 뽑은 것들의 합이 100 이되면 출력하자! 조합은 재귀의 방식으로 구현 해보자 #include #incl..