摘要:
题意: 给出一个1到n的排列,给出操作顺序,使升序排列能变为所给排列。分析: 正常冒泡排序的想法。如果前两个数,前面的大于后面的,则换(特例是n,1不能换)。否则,就用2的逆操作,把最后的数放前面。不过用了vector数组存放代码: #include #include #include #in... 阅读全文
摘要:
题意: 输入n个数,第i个数ai满足1≤ai≤i。对每个数添加符号,使和值为0。分析: 排序后从最大的元素(假设为k)开始,凑出sum/2即可。用去掉了k的集合,一定可以凑出sum/2 - a[k]。只要sum是偶数,就一定会有解。代码: #include #include #include ... 阅读全文
摘要:
题意: 钢铁公司有N个客户的订单,每个订单有一个产量q(生产时间刚好也等于q)和订单完成截止时间。公司要求完成尽量多的订单。分析: 先按截止时间d排序,然后维护一个已经选好的订单的优先队列,如果当前无法选择的话,那么尝试和之前花费时间最长的交换。如果qi#include#include#incl... 阅读全文