[Python] 백준 25418 정수 a를 k로 만들기
🧑💻 [Python] 백준 25418 정수 a를 k로 만들기 Silver 3 - 그리디 A에서 K를 찾는 것이 아닌, K에서 A를 찾는 것이 제일 쉽다 제일 큰 수에서, 짝수이면 2를 나누고, 홀수이면 1을 빼준다 단 짝수에서 2를 나눴을 때에 항상 A보다 커야 한다 문제풀이 K를 A로 만들어야 하고, 2로 최대한 많이 나누어야지, 최소로 연산을 할 수 있다 while 문을 통해 K가 A가 될때까지 순회를 한다 K가 짝수이거나, 2로 나누었을 때 A보다 커야지만 2로 나눌 수 있다 그게 아니고, 홀수이거나 K를 2로 나누었는데, A보다 작으면 계속 1로 빼준 코드 end, start = map(int, input().split()) count = 0 while start != end: if start ..
2023. 2. 10.
Programmers 2 레벨 테스트 2
Programmers 2 레벨 테스트 2 문제 배열에 숫자들이 주어진다. 위에 그림처럼 배열은 원형으로 이루어져있다. 배열 안에 있는 연속된 숫자들을 더해서, 더한 숫자들의 개수를 구하는 것 예를 들어 연속된 숫자 하나 : [4], [7], [9], [8] 연속된 숫자 둘 : [8, 4], [4, 7], [7, 9], [9, 8] 연속된 숫자 셋 : [8, 4, 7], [4, 7, 9], [9, 8, 4] 연속된 숫자 넷 : [8, 4, 7, 9] 위의 숫자들을 더하고, 반복된 숫자들을 제거 후, 개수를 세면 된다 문제 풀이 더한 숫자들은 set()에 넣을 것 그렇게 해야, 반복된 숫자들을 알아서 없앨 수 있다 배열 elements가 주어지는데 elements + elements를 해서, 배열을 두 배로..
2023. 2. 7.