[스택] 백준 17298
문제1. 크기가 N인 수열(A) 존재2. 각 원소 A[i]에 관련된 오큰수 NGE[i] 를 구한다3. 오큰수가 존재하지 않는 경우는 , "-1"로 저장( 1 (* 오큰수 : 오른쪽에 큰 수 중 가장 왼쪽에 있는 수 )ex) A [ 3,5,2,7 ] => NGE [ 5,7,7,-1 ]A [ 9,5,4,8 ] => NGE [ -1, 8,8,-1 ] 문제 분석N의 조건이 1,000,000까지 가능하므로 , 일반적인 반복문으로 풀이를 할 경우 시간초과가 난다스택을 이용하여, 풀이 진행스택에 새로 들어오는 수가 top에 존재하는 수보다 크면 그 수 는 오큰수가 된다오큰수 구한 후 수열에서 오큰수가 존재하지 않는 숫자에 -1을 출력ex) A[top] ex) A [ 3,5,2 ,7] // result [ ] // s..
2024. 10. 30.
[슬라이딩윈도우] 백준 12891번
문제문자열 {A, C, G ,T}인 문자열만 주어지는 상황1. 문자열 길이(S)를 입력 받고, 그 중에 부분 문자열(P)을 가지고 비밀번호를 만듬2. 부분 문자열중에서 비밀번호를 만들 때,A,C,G,T 각각의 만족하는 최소 조건이 존재3. 최소 조건을 만족하면 비밀번호를 만들 수 있음 (해당 개수 세기)4. 2초이내, (1 ex) A C G T A C G G T A C C (주어진 문자열) (A (2개), C(0개), G(1개), T(1개) 이상 조건 충족)->해당 조건을 만족하는, 비밀번호 만들 수 있는 개수 구하기 문제분석1,000,000개 이므로, O(n)으로 시간복잡도를 가져야함슬라이딩 윈도우를 이용하여, 부분문자열을 표현조건에 맞는 비밀번호 생성 문자를 이용하여, 몇개를 만들 수 있는지 구현[..
2024. 10. 24.