11478 2

백준 11478 <서로 다른 문자열의 개수>

11478번: 서로 다른 부분 문자열의 개수 (acmicpc.net) 11478번: 서로 다른 부분 문자열의 개수 첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000 이하이다. www.acmicpc.net 부분 문자열의 갯수를 출력하는 문제이다. 예를 들어, ababc의 부분 문자열은 a, b, a, b, c, ab, ba, ab, bc, aba, bab, abc, abab, babc, ababc가 있고, 서로 다른것의 개수는 12개이다. 즉 어떠한 문자열의 부분문자열들은 서로 겹치는게 분명히 존재하겠다. 겹치지 않는 부분문자열의 가짓수. 일단 겹치지 않는 조건중에 가장 잘 보이는건 글자의 갯수겠다. 사실 부분문자열을 영어로 해석하면 substring이다. 하지만 ..

Algorithm_PS 2023.12.08

백준 11478 <서로 다른 부분문자열의 개수>

11478번: 서로 다른 부분 문자열의 개수 (acmicpc.net) 11478번: 서로 다른 부분 문자열의 개수 첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000 이하이다. www.acmicpc.net 아주 직관적이며 쉬운 문제다. >> 부분 문자열 영어로 하면 substring.. 자바에 substring()이라는 메소드가 있다 허허.. 그걸 써서 어느 자료구조에다 넣느냐가 문제인데, 부분 문자열에 불가피하게 중복이 생기기 때문에 map 구조를 활용하여 중복을 다루는것이 가장 현명해보인다. map을 생성해서 값을 put했다면 entry로 한바퀴 돌며 중복된값있나 체크하고 있다면 그 값을 1로 replace()해준다면 바로 문제가 풀린다. 여기서 point는 s..

Algorithm_PS 2023.12.02