반응형
포인트
- 문제를 보면서 어떻게 풀까를 조금 생각한 것 같습니다. 하지만 생각보다 간단하게 해결했습니다.
- 조건을 보시면 값이 같아지려는 수는 n이라는 것을 확인할 수 있습니다.
- 그러면 최소로 움직이려면 어떤 것을 확인을 하여야 하는가? 를 확인해야 합니다. 저의 아이디어는 홀수로 이어지는 수이기 때문에 가운데를 기준으로 하나를 늘리고 하나를 줄이려면, 즉 가운데를 기준으로 하나씩 늘려가면서 행동하다 보면 값이 같아진다는 아이디어입니다.
% 글쓰면서 말하는 연습이 더 필요하네요.
🧶문서는 항상 수정될 수 있습니다. 비판은 환영합니다.
python
class Solution:
def minOperations(self, n: int) -> int:
data = [2*i+1 for i in range(n)]
temp = (n//2+1 ) if n&1 else n//2
summation = 0
for index in range(temp, n):
summation += (data[index] - n)
return summation
반응형
'알고리즘' 카테고리의 다른 글
[알고리즘] 디저트 카페 (0) | 2021.04.09 |
---|---|
[알고리즘] Determine if String Halves Are Alike (0) | 2021.04.07 |
[알고리즘] 키패드 누르기 (0) | 2021.04.06 |
[알고리즘] 수영장 (0) | 2021.04.05 |
[알고리즘] 숫자 만들기 (0) | 2021.04.05 |
댓글