码迷,mamicode.com
首页 >  
搜索关键字:环长度    ( 73个结果
笔试,面试,C/C++,判断单链表是否带环?若带环,求环长度,求环入口点(两种方法)
SListNode*IsRing(SListNode*&pHead)//判断链表是否有环,求相聚点 { //判空、有、没有 //思路:两个指针从头开始一快(2步)一慢(1步),若最后可以相聚,则链表有环 if(pHead) { SListNode*fast=pHead; SListNode*slow=pHead; while(fast&&fast->next) { fa..
分类:编程语言   时间:2016-01-05 01:37:54    阅读次数:294
[coj 1353 Guessing the Number]kmp,字符串最小表示法
题意:给一个字符串,求它的最小子串,使得原串是通过它重复得到的字符串的一个子串。思路:先求最小长度,最小循环长度可以利用kmp的next数组快速得到,求出长度后然后利用字符串最小表示法求循环节的最小表示即可。#pragma comment(linker, "/STACK:10240000")#inc...
分类:其他好文   时间:2015-08-27 02:11:21    阅读次数:173
HDU_3746 Cyclic Nacklace(KMP)
题目请点我 题解: 题目大意:有一个字符串s,可以在前后添加字符,使字符串成为一个循环次数至少为2的循环字符串,输出最少需要添加的字符数目。 首先可以证明题目可以等价为只在末尾添加字符使满足题意,要找到添加资格字符我们首先要找到循环单位的长度,利用一个辅助数组储存从起始位置开始长度为i的串的循环长度,初始值为i,利用与Next数组之间的关系来更新,找到循环长度,比如字符串abcabc,Next...
分类:其他好文   时间:2015-08-21 13:47:47    阅读次数:108
HDU - 5392 Infoplane in Tina Town
题目大意:给出一个序列,求变换几次可以回到原来的位置。比如 1 3 2 ,3 不在原来的位置,变到3位置,次数加1,2变到2,次数+1.得到2.。解题思路:做法就是分解循环长度。然后求下最小公倍数。但是不能直接用lcm求最小公倍数。。我们可以考虑用质数分解来求,即公共的质因子乘每个数本身的质因子。#include #include #include <algori...
分类:其他好文   时间:2015-08-17 21:45:35    阅读次数:119
[hdu5392 Infoplane in Tina Town]置换的最小循环长度,最小公倍数取模,输入挂
题意:给一个置换,求最小循环长度对p取模的结果思路:一个置换可以写成若干循环的乘积,最小循环长度为每个循环长度的最小公倍数。求最小公倍数对p取模的结果可以对每个数因式分解,将最小公倍数表示成质数幂的乘积形式,然后用快速幂取模,而不能一边求LCM一边取模。由于这题数据量太大,需要用到输入挂,原理是把文...
分类:其他好文   时间:2015-08-16 15:01:51    阅读次数:387
BZOJ 1025: [SCOI2009]游戏( 背包dp )
显然题目要求长度为n的置换中各个循环长度的lcm有多少种情况.判断一个数m是否是满足题意的lcm. m = ∏piai, 当∑piai≤ n时是满足题意的. 最简单我们令循环长度分别为piai,不足n的话,我们令其他循环长度为1, 补到=n为止. 这样它们的lcm显然是=m的.然后就是一个背包了.....
分类:其他好文   时间:2015-08-14 18:55:20    阅读次数:123
hpu 问题 A 一道签到题(KMP算法的考察)
本题题意:         输入一个长度不超过200,数值不超过100的循环小数,求出小数点后的循环节,循环节长度,循环次数。 解题思路:         本题为KMP算法的较全面的考察,首先将小数点后的数存放到一个数组中,并求出next数组,然后,由KMP算 法可知,循环节长度为:【k-next[k]】;循环次数为【k/(k-next[k])】,知此,循环节也不难求了,按循环长度直接输 ...
分类:编程语言   时间:2015-08-08 16:35:23    阅读次数:127
POJ 1026-Cipher(置换群)
题目地址:POJ 1026 题意:给一个字符串加密,如果字符串长度不够n,那么对字符串补空格,一直到n。给你n个数字代表加密方式,i位置的字母将被写到加密信息的ai位置,如此反复加密k次,让你求最后的密文。 思路:其实就是字符串的下标按照加密方式来置换,若干次变换后肯定又会回到原来的位置,每次的虚幻长度用lon来记录。 例如:1->4->7->1  那么1号位置的循环长度lon[1]=3;2...
分类:其他好文   时间:2015-07-25 16:52:59    阅读次数:176
hdu 5303 Delicious Apples(背包)
题意:一个环长度为L,上面有n棵树,篮子一次可装K个苹果; 给出每棵树的位置和树上的苹果数,求将所有苹果运回原点的最少的总距离;思路:将环分为两半考虑,且若有绕环一圈的情况也只能有一次; 以单个苹果为对象进行处理; 考虑不绕圈的情况:每个半圈优先取最远的苹果;sum[i]表示取第i个...
分类:移动开发   时间:2015-07-24 20:15:26    阅读次数:155
欧拉函数+费马定理 POJ3358
题意:给一个分数p/q,求它的小数的二进制表示的循环部分的开始位置和循环长度。 对于一个十进制小数,求二进制的方法是不断的乘2取整数部分。所以首先把p/q化成最简的形式p'/q',然后对其不断乘2,直到p'*2^i == p'*2^j (mod q'),这时候循环就出现了,i是循环开始的位置,j-i是循环长度。 经过变换得到: p'*2^i*(2^(j-i)-1) ==0 (mod ...
分类:其他好文   时间:2015-07-16 22:24:24    阅读次数:140
73条   上一页 1 ... 3 4 5 6 7 8 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!