烤面包
题目描述
小y同学暑假出去旅游啦~,他住的宾馆每天早上都会提供丰盛的自助早餐。小y同学最爱吃的就是现烤的切片面包。但是宾馆的烤面包机很差,虽然说每次最多可以同时烤k块面包,但是只能烤好这些面包的一个面。小y要想吃上好吃的面包,就需要把面包的两面都烤好。 小y同学一共想吃n块烤面包,因为每天都有好多景点需要游览,他不能在早餐上耽误很长时间,因此希望你能告诉他,最少需要使用几次烤面包机就可以烤好n块面包。
输入格式
输入一行,包含两个用空格隔开的正整数n和k(n, k <=10),n表示小y同学一共要烤n块面包,k表示宾馆的烤面包机一次最多可以同时烤好k块面包的一个面。
输出格式
输出一行一个整数,表示小y同学至少要用多少次烤面包机。
输入样例
3 2
输出样例
3
样例解释
假设面包的两面分别标记为A和B,小s同学第一次烤1号和2号面包的A面,第2次烤3号面包的A面和1号面包的B面,第3次烤2号和3号面包的B面,这是使用烤面包机次数最少的方案。
数据范围
对于10%的数据满足:k<=1; 对于50%的数据满足:k<=4; 对于100%的数据满足:n<=10, k<=10。
主要思路
这是一道简单的入门题。对于每一个n的排列方案,一定有最优方案,所以不用枚举,最优方案为n*2/k。如果多的(<k),就加1。 注意要特判n<k
——————AC代码
#include <bits/stdc++.h>
using namespace std;
int n,k;
int main(){
cin>>n>>k;
if(n<k){cout<<2;return 0;}
if(n*2%k==0)printf("%d\n",n*2/k);
else printf("%d\n",n*2/k+1);
return 0;
}
——————————QAQ
本文来自博客园,作者:蒟蒻orz,转载请注明原文链接:https://www.cnblogs.com/orzz/p/18122213
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话