题目1431:蓝桥杯2014年第五届真题-分糖果

//循环队列问题

#include<iostream>

#include<vector>

using namespace std;

int main() {

int n;

cin >> n;

vector<int> candies(n);

// 输入初始糖果数

for(int i = 0; i < n; i++) {

cin >> candiesi;

}

int teacherGiven = 0; // 老师补发的糖果总数

while(true) {

// 检查是否所有小朋友糖果数相同

bool allSame = true;

for(int i = 1; i < n; i++) {

if(candiesi != candies0) {

allSame = false;

break;

}

}

if(allSame) break;

// 第一阶段:分糖(需要临时保存)

vector<int> temp = candies;

// 每个小朋友分一半给左手边的孩子

for(int i = 0; i < n; i++) {

int give = tempi / 2; // 要给出的糖果数

// 给左边的小朋友(注意循环)

int left = (i - 1 + n) % n;//循环关键

candiesleft += give;

candiesi -= give;

}

// 第二阶段:老师补糖

for(int i = 0; i < n; i++) {

if(candiesi % 2 != 0) { // 如果是奇数

candiesi++; // 补1个糖果

teacherGiven++; // 计数增加

}

}

}

cout << teacherGiven << endl;

return 0;

}

相关推荐
IT探索7 分钟前
Linux 查找文件指令总结
linux·算法
Lzg_na10 分钟前
订阅发布模块事例
c++
汉克老师23 分钟前
2026年CSP-J初赛分数线-----预测
c++·csp-j·小学生·学c++编程
脱胎换骨-军哥25 分钟前
C++数据库存储引擎内核开发:B+树索引与MVCC并发控制的完整实现
数据库·c++·b树
zephyr0525 分钟前
数据结构-并查集
数据结构
Lumos1861 小时前
51单片机从零到实战(完结)——后续学习路线建议
算法
稚南城才子,乌衣巷风流1 小时前
DFS序详解:原理、应用与实现
算法·深度优先·图论
稚南城才子,乌衣巷风流1 小时前
动态树(Dynamic Tree)数据结构详解
数据结构·算法
小保CPP1 小时前
OpenCV C++将多张图像合并为webp动图
c++·人工智能·opencv·计算机视觉
zander2582 小时前
114. 二叉树展开为链表
数据结构·链表·深度优先