
+想法
「已注销」
zhangzhang
展开
-
UVA 11093 Just Finish it up(模拟|想法)
题目链接题意环形跑道上有n个加油站,第i个加油站可以加Pi汽油,从i加油站开到下一个加油站需要Qi汽油。任务是选择一个加油站作为起点,可以走完一圈后回到起点。解决从1开始枚举,以每一个点作为起点,如果可以就输出答案;如果当前节点不可以作为出发点,说明到了某一个点tmp不能再继续向下走了,那么从起点到tmp的这些点也肯定不能作为起点。#include<bits/stdc++.h> using name原创 2017-09-09 11:27:08 · 349 阅读 · 0 评论 -
GYM 100488 Construct a Permutation(构造|想法)
题目链接题意给出a和b,让你构造出来最长的、且最长上升子序列长度为a,最长下降子序列长度为b的序列。 这个题我们没有想出来要怎么构造 ,还停留在这个最大长度是不是a+b(b等于1的时候是a)的阶段解决思路是创建b组长度为a的上升子序列,而且每一组的最大值都比前一组的最小值来的小,则必然满足题意#include <algorithm> #include <iostream> #include <cs原创 2017-09-08 19:41:25 · 349 阅读 · 0 评论 -
GYM 100488 Two Pirates(想法)
题目链接题意有两个海盗,第一个海盗可以随便拿金币,第二个海盗每次都从剩下的金币里面拿第一个(太傻),然后问海盗a最多能拿多少个金币解决由于第一个人可以随便拿,那么不妨每次让其拿当前物品序列的第一个 开一个最小堆存下第一个人拿的所有物品的数量 如果这次对方拿的物品价值大于最小堆 中元素最小值,说明第一个人在之前某一轮不应该拿第一个,而是应该拿这次对方拿的这个物品 那么就把最小堆中最小元素删掉,把原创 2017-09-08 19:38:17 · 388 阅读 · 0 评论 -
UVA 1339 Ancient Cipher(映射 | 想法)
UVA 1339 Ancient Cipher题意给出两个字符串,可以重新排列可以自由映射,把其中的一个字符映射到另一个字符。询问是否存在一种一一映射方式,使得原来的字符串可以映射到目标字符串解决 由于可以重新排列,所以字符的位置不重要(这点以后会游泳,记住) 由于本题中的映射只能一对一,所以要求如果我们记录下26个字符每个字符出现的次数,并对字符出现的次数进行排序,str1(原串)里一个字符出现原创 2017-09-05 17:09:18 · 239 阅读 · 0 评论 -
Codeforces_841_B Godsend(思路|简单博弈)
Codeforces_841_B Godsend题意A和B两个人玩游戏 1. 在一个数组num[]中 2. A先从num[]数组中选择”任意的”“区间和是奇数”“连续的”一个区间,然后把这个区间的数字去掉. 3. 接下来是B从剩下的选择”任意的”“区间和是偶数”“连续的”一个区间,然后把这个区间的数字去掉 4. 直到谁没有数字可以去掉了,就输了解决 第一次做cf有点小紧张,然后想了想就去原创 2017-08-19 23:39:53 · 446 阅读 · 1 评论 -
UVA 1152 4 Values whose Sum is 0 (二分)
UVA_11524题意给出A B C D四个集合,要求从每个集合中选择a b c d使得a+b+c+d=0。 问有多少种选择方法?解决 意识到O(n^4)的算法会超时 通过枚举a+b的所有可能,查找-c-d的个数,累加即可 注意数组比较大,开在全局里面 #include<iostream> #include<cstdio> #include<algorithm> using namespace s原创 2017-08-19 19:30:16 · 231 阅读 · 0 评论