题目大意:

n个节点,选择一个节点的时候翻转这个节点与两侧k个节点(够的话),求最少几次全部翻到反面。

ps:同一个节点翻两次会翻回正面。

思路:

贪心,尽量多的选能翻翻2k+1个节点的节点,即在中间尽量多的划分长度为2k+1的区间。为使中间节点数恰好为(2k+1)的整数倍,两侧特殊考虑。

在边上最少翻k+1块,最多2k+1,故两边留的总节点数d要满足 2k+1d4k+2

当2k+2d3k+2时,一侧取k+1的最小情况,一侧根据剩余节点选择;

当3k+2d4k+2时,一侧去2k+1的最大情况,一侧根据剩余节点选择。

若找不出这个范围内的d,直接输出中点即可

#include<bits/stdc++.h>
using namespace std;
vector<int> ans;
int main()
{int n,k; scanf("%d%d",&n,&k);int d = n%(2*k+1);int t = n/(2*k+1);while(d<=n){d+=2*k+1;if(d>=2*k+2&&d<=4*k+2) break;}if(d>=2*k+2&&d<=4*k+2&&d<=n){ans.clear();if(d<=3*k+2){int l = d - 2 * k - 1;while(l<=n){ans.push_back(l);l += 2 * k + 1;}}else{int l = d - 3 * k - 1;while(l<=n){ans.push_back(l);l += 2 * k + 1;}}printf("%d\n",ans.size());for(int i=0;i<ans.size();i++) printf("%d ",ans[i]);printf("\n");}else{printf("1\n%d\n",(n+1)/2);}
}

CodeForces-1040B Shashlik Cooking(贪心)相关推荐

  1. 1040B. Shashlik Cooking

    B. Shashlik Cooking:题目 思路,如果所有烤肉都可以一次就行,如果不行就去前面调整一下 #include <bits/stdc++.h> using namespace ...

  2. 【Codeforces Round #507 (Div. 2, based on Olympiad of Metropolises) B】Shashlik Cooking

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 翻转一次最多影响2k+1个地方. 如果n<=k+1 那么放在1的位置就ok.因为能覆盖1..k+1 如果n<=2k+1 ...

  3. 【Codeforces】158B-Taxi(贪心,怎么贪咧)

         贪心   emmmm http://codeforces.com/contest/158/problem/B 题目大意:有四种旅客,四人一组,三人一组,两人一组,一人一组,一辆出租车最多可以 ...

  4. CodeForces - 1607D Blue-Red Permutation(贪心)

    题目链接:点击查看 题目大意:给出一个长度为 nnn 的数列,每个数字有一个颜色,如果是蓝色,每次操作则可以减一:如果是红色,每次操作则可以加一. 问有限次操作后,能否将数组变为一个长度为 nnn 的 ...

  5. CodeForces - 1481E Sorting Books(贪心+dp)

    题目链接:点击查看 题目大意:给出一个长度为 nnn 的序列,每次操作可以将任意一本书放到序列的末尾,问最少需要操作多少次,才能使得相同的数字挨在一起 题目分析:不难看出,对每个位置的数都操作一次,是 ...

  6. CodeForces 176A Trading Business 贪心

    Trading Business 题目连接: http://codeforces.com/problemset/problem/176/A Description To get money for a ...

  7. codeforces 735C Tennis Championship(贪心+递推)

    Tennis Championship 题目链接:http://codeforces.com/problemset/problem/735/C --每天在线,欢迎留言谈论. 题目大意: 给你一个 n ...

  8. Codeforces 161 B. Discounts (贪心)

    题目链接:http://codeforces.com/contest/161/problem/B 题意: 有n个商品和k辆购物车,给出每个商品的价钱c和类别t(1表示凳子,2表示铅笔),如果一辆购物车 ...

  9. codeforces 1203 E Boxers 贪心

    https://codeforces.com/problemset/problem/1203/E 题目大意:给 n n n个数,每个数可以做两种变化:(1) + 1 +1 +1:(2) − 1 -1 ...

  10. Codeforces 854 C Planning 贪心 最大堆

    题目链接: https://vjudge.net/problem/CodeForces-854C 题目描述: 有n架飞机,第i架飞机原本计划在第i分钟起飞,可是由于某种原因整个机场前k分钟是不能起飞的 ...

最新文章

  1. c语言编的游戏怎么在安卓平台使用,谁知道怎么把c语言写的游戏安装到安卓手机上面玩??...
  2. Python 工匠:善用变量来改善代码质量
  3. python进阶:闭包、map/reduce/filter函数、lambda函数、装饰器
  4. “算法复杂度”——其实并没有那么复杂
  5. h5 server send event(sse)
  6. 代理服务器ip地址搜索验证软件_代理服务器与ip分类介绍
  7. 【Java从0到架构师】项目实战 - 会话管理、EhCache、JWT、权限管理 Shiro、打包部署
  8. 24V转5V的常规操作7812,7805,重要的是器件选型
  9. Altium Designer 21 实例贴片0603封装的创建
  10. OverFeat学习
  11. 2018tfe世界计算机专业排名,2018年TFE TIMES美国研究生计算机科学专业排名
  12. 适用于 Windows 10 的触摸板手势
  13. 阿里高频面试题:如何快速判断元素是不是在集合里?
  14. 使用html2canvas实现超出浏览器部分截图
  15. (已解决)网页不显示数学公式||只显示源码
  16. 2012 CSP-S 初赛 答案解析
  17. win10更新右键没有卸载怎么解决?
  18. 计算机英语词汇频率统计,托福英语语法经典词汇与频率统计
  19. 莪的拽、像省田各号①样没尽頭队——软件需求规格说明书
  20. 《那些年啊,那些事——一个程序员的奋斗史》五

热门文章

  1. CAD学习笔记中级课【坐标】
  2. cgcs2000大地坐标系地图_MapGIS国土空间数据2000大地坐标系转换系统
  3. 下载慢怎么办?(域名遭到dns污染处理方法)
  4. An effective intrusion-resilient mechanism for PLCs against data tampering attacks
  5. html子布局不超出父布局,flex布局子元素超出父元素
  6. Linux查看最近开关机记录
  7. 浏览器打开页面的几种方式
  8. MacBook Pro输入法的技巧你知多少
  9. html实心向右三角形,css 如何在html页面上输出一个左三角形或右三角形呢?
  10. Ninth season eighth episode,Rachel‘s another sister,how is she???