[Programmers] #120825 - 문자 반복 출력하기 [Java][C++][Python]
문제 링크 1. 아이디어 문자열 my_string의 각 문자를 순회하며 해당 문자를 n번 반복한 문자열을 이어 붙이면, 각 문자가 n번씩 반복된 결과 문자열을 만들 수 있다. 2. 복잡도 접근 시간 공간 풀이 $O(N \times M)$ ...
문제 링크 1. 아이디어 문자열 my_string의 각 문자를 순회하며 해당 문자를 n번 반복한 문자열을 이어 붙이면, 각 문자가 n번씩 반복된 결과 문자열을 만들 수 있다. 2. 복잡도 접근 시간 공간 풀이 $O(N \times M)$ ...
문제 링크 1. 아이디어 num_list를 순회하며 각 원소를 2로 나눈 나머지로 홀수 개수를 세고, 전체 길이에서 이를 빼 짝수 개수를 구한 뒤 [짝수 개수, 홀수 개수] 순서로 반환하면 된다. 2. 복잡도 접근 시간 공간 풀이 $O(N...
문제 링크 1. 아이디어 1부터 n까지 순회하면서 i번째 줄에 별을 i개씩 출력하면 높이와 너비가 n인 직각삼각형을 출력할 수 있다. 2. 복잡도 접근 시간 공간 풀이 $O(N^2)$ $O(N)$ ($N$ = ...
문제 링크 1. 아이디어 문자열 my_string의 문자 순서를 거꾸로 뒤집어 반환하면 되는 간단한 문제다. 2. 복잡도 접근 시간 공간 풀이 $O(N)$ $O(N)$ ($N$ = my_string의 길이. C...
문제 링크 1. 아이디어 정수 num이 n의 배수인지 판별하는 문제로 num을 n으로 나눈 나머지가 0이면 배수인 것을 활용하면 된다. 2. 복잡도 접근 시간 공간 풀이 $O(1)$ $O(1)$ 3. 코드 ...
문제 링크 1. 아이디어 정수 number가 n과 m의 배수인지 판별하는 문제로 number를 n과 m으로 각각 나눈 나머지가 모두 0이면 배수인 것을 활용하면 된다. 2. 복잡도 접근 시간 공간 풀이 $O(1)$ $O(1)$ ...
문제 링크 1. 아이디어 n이 홀수면 n 이하의 홀수를 모두 더하고, 짝수면 n 이하의 짝수의 제곱을 모두 더한 값을 반환하면 되는 문제다. 가장 직관적인 방법은 홀짝을 나눈 뒤 2씩 건너뛰며 순회해서 합을 누적하는 것이다. 이 합은 닫힌 형태의 공식으로 $O(1)$의 시간복잡도로 구할 수도 있다. n이 홀수라면 1부터 n까지의 홀수는 $1...
문제 링크 1. 아이디어 두 수 n, m에 대해 문자열 ineq와 eq의 조합에 따라 아래와 같은 조건을 비교만 해주면 된다. ineq = ">", eq = "=" → n >= m ineq = "<", eq = "=" → n <= m ineq = ">", eq = "!" → n > m ineq...
문제 링크 1. 아이디어 정수 a, b와 boolean flag가 주어질 때, flag가 true면 a + b를, false면 a - b를 반환하면 되는 문제다. 2. 복잡도 접근 시간 공간 풀이 $O(1)$ $O(1)$ ...
문제 링크 1. 아이디어 문자열 code를 순회하며, 현재 문자가 "1"이면 mode를 전환하고 다음 문자로 넘어간다. "1"이 아니면 mode가 1이면서 인덱스가 홀수일 때, 또는 mode가 0이면서 인덱스가 짝수일 때 ret에 문자를 추가한다. 따라서 mode와 인덱스가 모두 홀수거나 모두 짝수일 때만 문자를 추가하면 된다. 순회를 마쳤...