[Programmers] #120851 - 숨어있는 숫자의 덧셈 (1) [Java][C++][Python]
문제 링크 1. 아이디어 주어진 문자열 my_string을 한 글자씩 훑어 숫자인 글자를 만나면 정수로 바꿔 누적해서 더하면 된다. 2. 복잡도 접근 시간 공간 풀이 $O(N)$ $O(1)$ ($N$ = my_...
문제 링크 1. 아이디어 주어진 문자열 my_string을 한 글자씩 훑어 숫자인 글자를 만나면 정수로 바꿔 누적해서 더하면 된다. 2. 복잡도 접근 시간 공간 풀이 $O(N)$ $O(1)$ ($N$ = my_...
문제 링크 1. 아이디어 문자열 my_string에 대해 my_string을 순회하며 숫자에 해당하는 글자만 골라 정수로 변환해 모은 뒤, 오름차순으로 정렬해 반환하면 된다. 2. 복잡도 접근 시간 공간 풀이 $O(N \log N)$ ...
문제 링크 1. 아이디어 문자열을 앞에서부터 한 글자씩 훑어 모음 a, e, i, o, u가 아닌 글자만 순서대로 이어 붙이면 된다. 2. 복잡도 접근 시간 공간 풀이 $O(N)$ $O(N)$ ($N$ = my...
문제 링크 1. 아이디어 문자열 my_string의 $0$번부터 $n - 1$번 인덱스의 문자까지를 잘라낸 부분 문자열을 반환하면 된다. 2. 복잡도 접근 시간 공간 풀이 $O(N)$ $O(N)$ ($N$ = ...
문제 링크 1. 아이디어 접두사 여부는 my_string의 앞부분이 is_prefix와 그대로 일치하는지 확인하면 판단할 수 있다. 문자열이 특정 접두사로 시작하는지 판정하는 표준 함수로 바로 처리할 수 있다. 2. 복잡도 접근 시간 공간 풀이 ...
문제 링크 1. 아이디어 문자열을 인덱스 기준 $[0, s)$, $[s, e]$, $(e, \text{끝})$ 세 구간으로 나누고, 가운데 구간만 뒤집어 세 조각을 다시 이어 붙이면 된다. 2. 복잡도 접근 시간 공간 풀이 $O(N)$ ...
문제 링크 1. 아이디어 한 줄에 m 글자씩 적으면 같은 열의 글자들은 인덱스가 정확히 m씩 차이 난다. c번째 열의 첫 글자는 $c - 1$번 인덱스이므로, $c - 1$에서 출발해 m씩 증가시키며 문자열 끝까지 문자를 모아 이어 붙이면 된다. 2. 복잡도 접근 시간 공간 ...
문제 링크 1. 아이디어 인덱스를 q로 나눈 나머지가 r인 위치는 $r$, $r + q$, $r + 2q$, … 순서로 나타난다. 시작 인덱스 r에서 출발해 q씩 증가시키며 문자열 끝까지 문자를 모아 이어 붙이면 된다. 2. 복잡도 접근 시간 공간 ...
문제 링크 1. 아이디어 길이 52의 카운팅 배열을 두고 문자열을 한 번 순회하면서 각 문자에 대응하는 칸을 1씩 증가시켰다. 대문자 'A'~'Z'를 0~25번, 소문자 'a'~'z'를 26~51번에 대응시키면 대문자는 c - 'A', 소문자는 c - 'a' + 26으로 인덱스를 계산할 수 있다. 2. 복잡도 ...
문제 링크 1. 아이디어 k부터 시작해 k씩 더해가며 n을 넘지 않을 때까지의 값을 배열에 담으면, k의 배수가 이미 오름차순으로 얻어진다. 2. 복잡도 접근 시간 공간 풀이 $O(N / K)$ $O(N / K)$ ...