【蓝桥杯】省赛:分糖果(思维/模拟)

思路

数据很小,直接暴力模拟。

有意思的是一个列表如何当成循环队列写?可以arr[(i+1)%n]让他右边超出时自动回到开头。

code

python 复制代码
import os
import sys

n = int(input())
arr = list(map(int,input().split()))

ans = 0
while 1:
  arr1 = arr.copy()
  for i in range(n):
    arr1[i] = (arr[i] + arr[(i+1)%n])//2
    if arr1[i] % 2 == 1:
      arr1[i] += 1
      ans += 1
  arr = arr1.copy()
  if len(set(arr)) == 1:break
print(ans)
相关推荐
理智的灰太狼5 小时前
题目 3241: 蓝桥杯2024年第十五届省赛真题-挖矿
职场和发展·蓝桥杯
GUIQU.5 小时前
【每日一题 | 2025年6.2 ~ 6.8】第16届蓝桥杯部分偏简单题
算法·蓝桥杯·每日一题
乄夜6 小时前
嵌入式面试高频(5)!!!C++语言(嵌入式八股文,嵌入式面经)
c语言·c++·单片机·嵌入式硬件·物联网·面试·职场和发展
GalaxyPokemon8 小时前
LeetCode - 53. 最大子数组和
算法·leetcode·职场和发展
天真小巫18 小时前
2025.6.8
职场和发展
eachin_z20 小时前
力扣刷题(第四十九天)
算法·leetcode·职场和发展
眼镜哥(with glasses)1 天前
蓝桥杯 国赛2024python(b组)题目(1-3)
数据结构·算法·蓝桥杯
每次的天空1 天前
Android第十三次面试总结基础
android·面试·职场和发展
珂朵莉MM1 天前
2021 RoboCom 世界机器人开发者大赛-高职组(初赛)解题报告 | 珂学家
java·开发语言·人工智能·算法·职场和发展·机器人