[LeetCode] 1103. Distribute Candies to People 分糖果
2024-10-08 21:00:49
题目:
思路:
本题一开始的思路就是按照流程一步步分下去,算是暴力方法,在官方题解中有利用等差数列进行计算的
这里只记录一下自己的暴力解题方式
只考虑每次分配的糖果数,分配的糖果数为1,2,3,4,5,..., 依次加1
再考虑到分配的轮数,可以利用 i % num_people 来求得第i次应该分配到第几个人
最后要注意的是,如果当前糖果数小于本应该分配的糖果数,则将当前糖果全部给予,也就是要判断剩余糖果数 candies 与本该分配糖果数 i+ 的大小,谁小分配谁
代码:
class Solution {
public:
vector<int> distributeCandies(int candies, int num_people) {
// vector<int> res(num_people, 0);
// int i=1;
// for(int k=0; candies>=i+k*num_people; k++){
// while(i <= num_people){
// if(candies<i+k*num_people){
// res[i-1] += candies;
// candies = 0;
// break;
// }
// res[i-1] += i+k*num_people;
// candies -= i+k*num_people;
// i++;
// }
// i=1;
// }
// if(candies) res[0] += candies;
// return res;
vector<int> ans(num_people); // 初始元素为0
int i=;
while(candies!=){
ans[i % num_people] += min(candies, i+);
candies -= min(candies, i+);
i++;
}
return ans;
}
};
被注释的代码是自己的想法,虽然复杂度相同,看到题解才发现自己小题大做,没有理解透题目
最新文章
- [Search Engine] 搜索引擎技术之查询处理
- Thinking in Java——笔记(13)
- iOS内部跳转问题
- vi 编辑器命令 (share)
- IOS开发之—— model最原始的封装,MJExtension加入工程(后续model都继承于它)
- 转:python webdriver API 之浏览器的操作
- Android动绘图标——I am not a gif maker,I am a developer
- cs231n spring 2017 lecture2 Image Classification 听课笔记
- final、finally和finalize的区别
- Luogu P5292 [HNOI2019]校园旅行
- codeforces 13 D
- Python学习(三十二)—— Django之视图系统
- 【原创】大数据基础之Hive(3)最简绿色部署
- Essay3.0发布,基于JavaScript的前后端同构博客系统
- Java泛型方法与泛型类的使用------------(五)
- eclipse中配置server
- 问题 B: 【例9.3】求最长不下降序列(基础dp)
- VS Code搭建.NetCore开发环境(二)
- python正则检测密码合法性
- matlab的应用
热门文章
- .net core ioc
- 方差分析|残差|MSA/MSE|Completely randomized design|Randomized block design|LSD|主效应|intercept|多重比较|
- dbSNP|n SwissVar|n CanProVar|CHPP|mutation assessor|
- python学习笔记(3)数据类型-列表list
- 吴裕雄--天生自然Android开发学习:下载安装android stuio集成开发工具
- oracle存储过程随笔
- LG_3459_[POI2007]MEG-Megalopolis
- Python 搭建webdriver环境遇到的问题总结
- 变身六次失去核心的小米Note还能火吗
- 用Express 4和 MongoDB打造Todo List