摘要:
Problem Description娜娜好不容易才在你的帮助下"跳"过了这个湖,果然车到山前必有路,大战之后必有回复,大难不死,必有后福!现在在娜娜面前的就是好多好多的糖果还有一些黑不溜秋的东西!不过娜娜眼中只有吃不完的糖果!娜娜高兴地快要蹦起来了!这时有一位挥着翅膀的女孩(天使?鸟人?)飞过来,... 阅读全文
摘要:
题意: 写出一个环,环上有2^n个格子,每个格子中的数字是0或1,相连着的n个格子可以组成一个数的二进制,要求给出这2^n个数字的序列,使得组成的2^n个数字全是不同的。(即从0到2^n-1)思路: 构造一个图,但是只需要考虑边,每条边假设为n个0/1组成的串,即此图有2^n条边,每边代表1个数... 阅读全文
摘要:
题意:给出一个0≤N≤1018,求其二进制中有几处是具有1的,假设相连的1只算1处,比如1101011就是3处。思路:一个个数,当遇到第一个1时就将flag置为1;当遇到0就将flag置为0。当遇到1时,flag=0就统计,当flag=1时就不统计。 1 #include 2 #define LL... 阅读全文
摘要:
题意: 给定一个序列,对于q个询问:(L,R)之间有几个逆序对?序列元素个数<=1000,q<=100000。只有1个测试例子。 思路: [L,R]的逆序对数量可以这么算,假设L<=K<R,将区间拆成两部分,那么[L,k]中的逆序对要算上, (k,R]中的逆序对也要算上,还有一些逆序对假设为(l,r 阅读全文
摘要:
题意:给一个字符串A,只含小写字符数个。再给一个字符串B,含小写字符数个。规则如下:1、字符串B从左至右逐个字符遍历,对于每个字符,如果该字符在A中存在,将A中所有该字符删掉,若不存在,则错误次数+1。2、当错误次数达到7时,游戏结束,输了lose。3、当串A中已经没有字符了,游戏结束,赢了win。... 阅读全文
摘要:
题意:a,b,c三种棍子长度分别为20,28,32,现需要这三种棍子数根,欲买长为75的棍子来剪成这三种(不够长的就废弃) ,问需要买多少根。思路:将所有棍子尽可能和其他搭配起来,使得数量减到最少。分情况: 结果(按最坏情况考虑):2a+c=72 要么c=0,要么a=1或a=02a+b=68... 阅读全文
摘要:
题意: 给出n个人的师徒关系,如有 a是b的师傅,b是c的师傅,c是a的师傅,这样则不合法,输出NO,否则输出YES。思路: 每段关系可以看成一条有向边,从师傅指向徒弟,那么徒弟的徒子徒孙都不可能再指向其师傅或自己,所以不可能构成环。两种方法 :1,用拓扑的方法,每次去掉一个入度为0的点,全部点... 阅读全文
摘要:
题意: 给定一个图,要求打印出任一条欧拉路径(保证图肯定有欧拉路)。思路: 深搜的过程中删除遍历过的边,并在回溯时打印出来。在深搜时会形成多个环路,每个环都有一个或多个结点与其他环相扣,这样就可以产生欧拉路径。 1 #include 2 using namespace std; 3 const... 阅读全文
摘要:
题意:给出n个岛,每个岛都有桥到达其他岛,且桥数可多可少(即使两岛有多桥),判断是否是欧拉路(即每条桥只能走一次,所有桥都能遍历1遍)。思路:满足如下条件之一者即为欧拉路:1、连通图,每个岛的度数为偶数。2、连通图,其中仅两个岛的度数为奇数,其他都是偶数。 1 #include 2 using n... 阅读全文
摘要:
题意: 给出一个有n个点的无向图,每个点上有石头数个,现在的游戏规则是,设置某个点A的度数为d,如果A点的石子数大于等于d,则可以从A点给每个邻接点发一个石子。如果游戏可以玩10万次以上,输出INF,否则输出最多能玩几次。思路: 暴力枚举每个可以玩的点,假如可以玩无限次,且当前状态为Z(指所... 阅读全文