
算法题
Donric-Yee
想过高配版的生活,自己的要求就别太低。
展开
-
【贪心算法】拿最多金币
Alice和Bob穿越成了加勒比的海盗。有一次海盗们发现了一个大的宝藏,金币总额M的位数比海盗们的人数还多!他们靠决斗产生了海盗的排位,并约定,无论面对的金币数量是多少,都需要在这个数目的基础上划掉一位作为给下一个海盗的数目。每个海盗都希望自己拿到的金币数量最多,并假设他们都是聪明的,都知道要怎么做才能保证自己拿到最多的金币。Bob经过激烈的搏斗拿到了第4的排名,他能拿到金币的数目为N(特别强调,...原创 2020-03-04 23:39:46 · 1609 阅读 · 0 评论 -
【贪心算法】最小能量消耗
Alice和Bob买了个清扫垃圾的机器人,这个机器人能够把两堆垃圾压缩成一堆,但它有个怪癖,两堆垃圾必须放在另外一个干净的地方进行压缩。如果所有的垃圾压缩成一堆了,它完成任务。把一堆垃圾从一个地方运到另一个地方所耗能量等于这堆垃圾的重量,两堆垃圾进行压缩所耗能量是这两堆垃圾重量之和。问,处理已知的垃圾要耗能多少?输入:垃圾的数目N,以及每堆垃圾的重量Wi输出:所耗能量之和T样例输入:33...原创 2020-03-04 23:35:52 · 1874 阅读 · 0 评论 -
【分治算法】计算两数之间每一位上1的个数
Alice和Bob来到古老的金字塔,发现古代法老留下的两个数a和b(a<b),传说如果能够在机关启动前正确数出两个数字间1出现的次数,就可以得到法老的权杖。机会只有一次,你可以帮助他们么?(一个一个数肯定是来不及的。。。)样例输入:8 13样例输出:5算法描述:输入的两个数a,b,先算0a中1的个数,再算0b中1的个数;先算出输入数a的最高位对应的基本单位w(如1234的基本...原创 2020-03-04 23:26:29 · 1043 阅读 · 0 评论 -
【分治算法】选手日程表设计
有n(n=2k)个运动员要进行网球循环赛,Alice和Bob要为他们设计一个满足以下要求的比赛日程表:每个选手必须与其他n-1个选手各赛一次每个选手一天只能赛一次循环赛一共进行n-1天输入为k请为他们设计算法。样例输入:1样例输出1 22 1算法描述:先初始化一个两个选手的比赛日程表;若输入选手数为2,则直接输入初始化的比赛日程表若输入选手数大于2,则先将2人比赛日程...原创 2020-03-04 23:22:52 · 1132 阅读 · 0 评论 -
【分治算法】求最大最小数
Alice晚上要去看电影,Bob也要一起去。Alice随手写了一串数,要Bob经过若干次比较求出这里面最大的数和最小数,并且Bob的比较次数一定要尽量小,如果是你,需要比较多少次呢?输入:所有的数。输出:比较次数样例输入:18 32样例输出:1算法描述:这组数个数为偶数则不变;为奇数则先不考虑最后一个数v,去掉最后一个数使这组数的个数为偶数;将偶数个数两两比较,小的放置第一组a...原创 2020-03-04 23:19:07 · 1805 阅读 · 0 评论