문제풀이/기타

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 def solution(n): answer = 0 cnt1 = bin(n).count('1') while True: n += 1 tmp = bin(n).count('1') if cnt1 == tmp: answer = n break return answer 효율성 테스트에서 걸리지 않을까 했는데 안 걸렸다...? bin 함수는 정수를 인자로 받아 2진수로 변환한 것을 문자열로 리턴해주는 함수이다. 예를 들자면 bin(12)의 리턴값은 '0b1100'이 나온다
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 def solution(n, s): answer = [] if s > n: answer= [s//n for _ in range(n)] total = sum(answer) idx = n-1 while True: if total == s: return answer else: answer[idx] += 1 total += 1 idx -= 1 else: return [-1] 각 원소의 곱이 최대가 되려면 원소들끼리의 차이가 적어야 한다. 그래서 s를 n으로 나눈 몫을 n개만큼 배열에 넣어놓고 마지막 인덱스의 값..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 def solution(n): answer = 0 acc = [0 for _ in range(n+1)] # 누적합 for i in range(1, n+1): acc[i] = i + acc[i-1] for i in range(n, -1, -1): for j in range(i-1, -1, -1): if acc[i] - acc[j] == n: answer += 1 break elif acc[i] - acc[j] > n: break return answer 투포인터로 풀어볼까 하다가 누적합으로 풀었다. 다른 ..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 def solution(s): stack = 0 for el in s: if el == '(': stack += 1 else: if stack
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 def solution(n): answer = 0 while True: if n == 0: return answer elif n == 1: return answer + 1 else: while n % 2 == 0: n //= 2 n -= 1 answer += 1 처음에는 dp로 풀었다가 효율성 0점 맞고 다시 위의 코드로 풀었더니 통과했다... 아래의 코드가 효율성 0점 맞은 DP 풀이ㅠ정확성은 다 통과하긴 했다. N이 10억까지 나와서 dp로 풀면 안된다. def solution(n): ans = 0 ..
딜레이레이
'문제풀이/기타' 카테고리의 글 목록 (5 Page)