문제 직사각형 별찍기 접근 주어지는 n,m 만큼 별을 출력하면 된다. 코드 파이썬 코드 a, b = map(int, input().strip().split(' ')) for i in range(b): s = "*"*a print(s) C++ 코드 #include <iostream> us...
문제 제일 작은 수 제거하기 접근 최소값을 찾고 해당 값을 배열에서 제거하면 된다. 코드 파이썬 코드 def solution(arr): minIdx = 0 for i in range(1,len(arr)): if arr[minIdx] > arr[i]: minIdx = i ...
문제 실패율 접근 각 스테이지에 도전 중인 사람 수 세기 각 스테이지별 실패율 구하기 실패율로 정렬하여 정답 반환 1의 경우 해시 테이블을 이용하여 해결하였다. 2의 경우에 실패율은 (해당 스테이지에 도전중인 사람) / (전체 인원 - 해당 스테이지 이전에 도전중인 사람) 이다. 1스테이지부터 시작해서 실패율을 구해주며 전...
문제 [1차]다트게임 접근 점수 중에 10점도 있기 때문에 이러한 경우를 한번 전처리하면서 걸러주었다. 10점을 묶어서 저장하기 위해 리스트로 바꿔서 저장해두고, 해당 리스트를 이용해 점수를 계산했다. 전처리하는 부분에서 i+1이 범위를 넘어갈까봐 체크하는 부분을 두었는데, 생각해보니 점수가 가장 마지막에 오는 경우는 없다. (점수와 보너...
문제 정수 내림차순으로 배치하기 접근 각 자리 숫자에 대해 해시 테이블을 만들어 개수를 카운팅하면 쉽게 해결 가능하다. 코드 파이썬 코드 def solution(n): cnt = [0] * 10 answer = 0 while n>0: cnt[n%10]+=1 n//=10...
문제 핸드폰 번호 가리기 접근 전체 길이 - 4만큼 별이 있어야 하고, 그 이후 자리를 이어 붙이면 된다. 코드 파이썬 코드 def solution(phone_number): starCnt = len(phone_number) - 4 answer = '*' * starCnt answer += str(ph...
문제 약수의 합 접근 n까지 돌며 나누어 떨어지는 수들을 더하면 된다. n의 범위에 0도 포함되어 있으므로 주의해야 한다. for문의 범위를 1부터 시작해주면 신경쓰지 않아도 된다. 코드 파이썬 코드 def solution(n): answer = 0 for i in range(1,n+1): i...
문제 자연수 뒤집어 배열로 만들기 접근 10으로 나누며 나머지를 한자리씩 담아주면 된다. 코드 파이썬 코드 def solution(n): answer = [] while n>0: answer.append(n%10) n //= 10 return answer C+...
문제 정수 제곱근 판별 접근 1부터 n까지 올라가며 하나씩 제곱해서 같은지 비교할 수 있다. 좀 더 빠른 방법은 1부터 n까지를 이분 탐색하면 된다. 하지만 math에 sqrt 라는 좋은 함수가 있으니 이를 이용하면 간단하게 해결할 수 있다. 코드 파이썬 코드 import math def solution(n): an...
문제 x만큼 간격이 있는 n개의 숫자 접근 코드 파이썬 코드 def solution(x, n): answer = [] num = x for _ in range(n): answer.append(num) num += x return answer C++ 코드 #...