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

思路

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

有意思的是一个列表如何当成循环队列写?可以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)
相关推荐
LYFlied1 小时前
【每日算法】LeetCode 78. 子集
数据结构·算法·leetcode·面试·职场和发展
LinHenrY12271 小时前
初识C语言(编译和链接)
c语言·开发语言·蓝桥杯
_OP_CHEN1 小时前
【算法基础篇】(三十五)图论基础之最小生成树:从原理到实战,彻底吃透 Prim 与 Kruskal 算法
算法·蓝桥杯·图论·最小生成树·kruskal算法·prim算法·acm/icpc
LYFlied1 小时前
【算法解题模板】-【回溯】----“试错式”问题解决利器
前端·数据结构·算法·leetcode·面试·职场和发展
资深web全栈开发2 小时前
LeetCode 3652: 按策略买卖股票的最佳时机
算法·leetcode·职场和发展
渡过晚枫3 小时前
[蓝桥杯/java/算法]攻击次数
java·算法·蓝桥杯
LYFlied4 小时前
【每日算法】LeetCode 79. 单词搜索
前端·算法·leetcode·面试·职场和发展
User_芊芊君子4 小时前
【LeetCode经典题解】:二叉树转字符串递归解法的核心逻辑与代码解剖
算法·leetcode·职场和发展
天真小巫5 小时前
2025.12.18总结
职场和发展
LYFlied5 小时前
【每日算法】LeetCode 22. 括号生成
数据结构·算法·leetcode·面试·职场和发展