摘要: 【摘记】数论题目。ACM。细节需考虑完整。【题目描述】给定N和P,以及F(1)=A,F(2)=B,F(i)=F(i-1)*F(i-2) (i>=3)。求F(n) mod P。1≤n≤1000000000, 1≤P≤1000000, 0≤a, b0 但a^(b mod φ(p)+φ(p)) =0,所以b0 then begin getlong:=i-hash[tmp];exit;end; hash[tmp]:=i; //writeln(s,' ',tmp); end;end;beginassign(input,'bruteforce.in');assign( 阅读全文
posted @ 2011-08-03 16:20 FancyCoder0 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 树有很多优美的性质,这题就是一个很好的例子.在树上找出一条不超过给定长度的路径,使得所有点到这条路径的距离的最大值最小.可以证明,这条路径必定在树的直径上.很像NOIP树网的核.两遍BFS,求出直径后(可能不唯一,但只需一条足够),把直径上所有边的权记录下来,并在原图上把它们改成0,再一遍BFS,求出不是直径上的点离直径的最长距离S’.这样,我们可以二分答案,由于路径只为一条,所以对应到数组中是连续的一段,判断是否可行即可(这里可以用二分查找O(logn),我写了O(n)的朴素),设最小可能值为S.1、若当S’>S,S’不可能增大,即那时那个不是直径上的点一定能覆盖到.2、若当S’<S,S’增 阅读全文
posted @ 2011-08-03 15:53 FancyCoder0 阅读(427) 评论(0) 推荐(0) 编辑