自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(212)
  • 收藏
  • 关注

原创 Delay List

sgu267,268

2015-06-16 22:45:47 444

原创 Project Euler 014 Longest Collatz sequence

题意:定义一种变换,当nn是奇数的时候变成3n+13n+1,当nn是偶数的时候变成n/2n/2,有个猜想是所有数都会变回00,问1∼1061\sim10^6中变回11步数最长的那个数。 分析:目前只想到记忆化搜索,顺便加点小优化。#include <bits/stdc++.h>#define ll long long#define pii std::pair<int,int>#define mp

2017-02-23 23:09:56 311

原创 Project Euler 013 Large sum

题意:求1010个5050位数的和的前1010位。 分析:裸的高精度,或者double啊啥的应该也是能过的吧。#include <bits/stdc++.h>#define ll long long#define pii std::pair<int,int>#define mp std::make_pair#define fi first#define se second#define SZ

2017-02-23 22:52:23 265

原创 Project Euler 012 Highly divisible triangular number

题意:求第一个满足约数个数>500>500个的三角形数。 分析:考虑第nn个三角形数是n(n+1)2\frac{n(n+1)}{2},而nn和n+1n+1互质,因此有 d(n(n+1)2)=⎧⎩⎨⎪⎪⎪⎪d(n2)⋅d(n+1),n为偶数d(n)⋅d(n+12),n为偶数d\left(\frac{n(n+1)}{2}\right)=\left\{\begin{matrix}d(\frac{n

2017-02-15 22:06:43 293

原创 Project Euler 011 Largest product in a grid

题意:给定一个20×2020\times 20的矩阵,求最大的四个连续的数的乘积,连续意思是同一行连续或同一列连续或者斜线连续。 分析:暴力枚举四个数的起点,暴力枚举方向,O(202⋅4⋅4)O(20^2 \cdot 4\cdot 4),可以用之前008008的方法做到O(202⋅4)O(20^2\cdot 4)。#include <bits/stdc++.h>#define ll long lo

2017-02-15 21:52:44 212

原创 Project Euler 010 Summation of primes

题意:求2×1062\times 10^6以内的质数的和。 分析:欧拉筛法即可。#include <bits/stdc++.h>#define ll long long#define pii std::pair<int,int>#define mp std::make_pair#define fi first#define se second#define SZ(x) (int)(x).si

2017-02-15 21:40:49 174

原创 Project Euler 009 Special Pythagorean triplet

题意:求一组勾股数(a,b,c)(a, b, c),满足a+b+c=1000a + b + c = 1000。 分析:暴力枚举a,ba, b是O(10002)O(1000^2)的。 考虑公式a=m2−n2,b=2mn,c=m2+n2(m>n)a = m^2-n^2, b = 2mn, c = m^2+n^2(m >n)已经可以生成所有的基本勾股数了,我们只需要在所有基本勾股数中找一组周长是100

2017-02-15 21:25:04 214

原创 Project Euler 008 Largest product in a series

题意:求一个10001000位数中,最大的连续1313个数字的乘积。 分析:考虑暴力枚举起始位置就是O(13n)O(13n)的,考虑将串按00分成若干段,就可以O(n)O(n)了。#include <bits/stdc++.h>#define ll long long#define pii std::pair<int,int>#define mp std::make_pair#define f

2017-02-14 21:42:32 317

原创 Project Euler 007 10001st prime

题意: 求第1000110001个质数 分析: 考虑[1,n][1, n]内质数出现个数约为nlnn\frac{n}{\ln n},n=120000n=120000时就满足条件了,直接在这个范围内做筛法筛出质数即可。#include <bits/stdc++.h>#define ll long long#define pii std::pair<int,int>#define mp std::m

2017-02-14 21:27:03 195

原创 Project Euler 006 Sum square difference

题意:∑100i=1i2−(∑100i=1i)2\sum_{i = 1} ^ {100}i^2 - (\sum _ {i = 1} ^ {100}i)^2 分析:依旧考虑两种做法。 1. 暴力求出两个值。 2. 前一个等于n(n+1)(2n+1)6\frac{n(n + 1)(2n + 1)}{6},后一个等于(n(n+1)2)2\left(\frac{n(n + 1)}{2}\right)

2017-02-14 21:20:05 204

原创 Project Euler 005 Smallest multiple

题意:lcm(1,2,3,...,20)lcm(1,2,3,...,20) 分析:依旧考虑两种做法。 1. 直接lcm(1,lcm(2,lcm(3,...)))lcm(1, lcm(2, lcm(3, ...)))。 2. 求出每个数的质因数分解,每个质数取个最高次幂即可。#include <bits/stdc++.h>#define ll long long#define pii std:

2017-02-14 21:11:21 201

原创 Project Euler 004 Largest palindrome product

题意:求由两个三位数乘起来构成的数中的最大的回文数。 分析:依旧考虑两种做法。 1. 直接暴力枚举两个数在判断,O(n2logn)O(n^2\log n)。 2. 枚举回文串的前一半,再判断是否能由两个三位数乘起来,O(Σd)O(\Sigma d),dd表示枚举出来的回文串的约数个数,可以先pollard-rho把所有质因子搞出来,再dfs出所有的约数。#include <bits/stdc

2017-02-14 21:01:10 219

原创 Project Euler 003 Largest prime factor

题意:求600851475143600851475143的最大质因子。 分析:依旧考虑两种做法。 1. 直接暴力枚举质因子,O(n0.5)O(n^{0.5})。 2. pollard-rho,O(n0.25logn)。O(n^{0.25}\log n)。#include <bits/stdc++.h>#define ll long long#define pii std::pair<int,

2017-02-13 12:32:46 268

原创 Project Euler 002 Even Fibonacci numbers

题意:求≤4000000\leq 4000000的所有偶fibonaccifibonacci数的和 分析:依旧考虑两种做法。 1. 我们直接枚举每个斐波那契数,O(log4000000)O(\log 4000000)的复杂度。 2. 考虑fibfib数列的奇偶性,每三个一个循环节,那我们可以设计一个矩阵乘法或者直接拿通项求一个等比数列。#include <bits/stdc++.h>#defi

2017-02-12 19:53:11 236

原创 Project Euler 001 Multiples of 3 and 5

题意:求<1000<1000的所有3 or 53~or~5的倍数的数的和 分析:考虑两种做法,第一种我们直接枚举每个数,O(1000)O(1000)的复杂度,第二种考虑容斥,33的倍数+55的倍数-1515的倍数

2017-02-12 19:33:28 220

原创 Bubble Cup 9 - Finals [Online Mirror] 题解

A. Festival Organization很显然,设fif_i表示长度为ii的满足条件的0101串个数,那么有: fi=fi−1+fi−2,f1=2,f2=3f _ i = f _ {i - 1} + f _ {i - 2},f _ 1 = 2, f _ 2 = 3 这只是将传统的fibfib序列左移了一下,反正答案是形如solve(r)−solve(l−1)solve(r)-solve(

2016-09-23 10:50:40 529

原创 sgu200系列题目分类

高斯消元:200 DP:201,202,205,214,220,221,223,225,237 哈夫曼编码:203 物理:204 KM:206,210 贪心:207 polya计数:208 计算几何:209,217,227,228,233 构造:211,213,216 网络流:212(HLPP) 模拟:215,229 二分图:218,234 拓扑:219,230 组合数学:

2015-07-27 23:21:13 562

原创 sgu293:Game with Q an C(构造)

题目大意:       ~~~~~~有一个长度为 2n−1 ~2n-1~的 01 ~01~序列,题目会将元素一个一个告诉你,你在每一时刻可以交换两个不同位置的元素。求出一种方案,使得在每个奇数时刻序列都是回文序列。分析:       ~~~~~~又见构造题一道。((构造神题啥的最不会做了QAQ)QAQ)       ~~~~~~自己想出了前一半,膜拜神犇代码差不多理解了另一半。

2015-07-26 23:42:58 659

原创 sgu294:He's Circles(polya计数+高精度)

题目大意:       ~~~~~~一个长度为 n(1≤n≤200000) ~n(1\leq n \leq 200000)~的环由 0 or 1 ~0~or~1~组成,求有多少本质不同的环。分析:       ~~~~~~((这题有可能更侧重于考高精度))       ~~~~~~考虑循环节的个数只可能为 n ~n~的约数,且循环节的个数为 d ~d~的置换会出现 φ(n/d) ~\varph

2015-07-26 18:37:12 1098

原创 sgu295:Identifier Duplicated!(组合数学)

题目大意:       ~~~~~~给定一个包含数字,空格和拉丁字母的字符串。现在可以在单词之间,字符串开头和末尾处添加字符,可以将 A,B,C,E,H,K,M,O,P,T,X,a,c,e,o,p,x,y ~A, B, C, E, H, K, M, O, P, T, X, a, c, e, o, p, x, y~替换成相应的俄文字母,问长度在 [q,c] ~[q,c]~内的替换后的字符串有多少种,

2015-07-26 14:52:25 480

原创 sgu296:Sasha vs. Kate(贪心)

题目大意:       ~~~~~~给定一个正整数 n(1≤n≤101000) ~n(1\leq n \leq 10^{1000})~和一个非负整数 k ~k~,要求你删去 n ~n~中的 k ~k~个数字,使得剩下的数最大,保证 k ~k~小于 n ~n~的位数,且 n ~n~没有前导零。分析:       ~~~~~~我们只需从高位向低位贪心的取最大值即可。AC code:#include

2015-07-26 11:13:08 390

原创 sgu297:Fair-play(水题)

水题老道理,直接上代码。AC code:#include <bits/stdc++.h>#define pb push_back#define mp make_pair#define clr(a, b) memset(a, b, sizeof a)#define rep(i, a, b) for(int i = (a); i <= (b); ++i)#define per(i, a, b)

2015-07-26 11:07:02 447

原创 sgu298:King Berl VI(差分约束)

题目大意:       ~~~~~~有 n ~n~个变量 xi ~x_i~, m ~m~个不等式形如 xi≥xj+c ~x_i\geq x_j+c~的不等式((cc并不一定为同一值)),且 xi∈[−10000,10000] ~x_i\in [-10000,10000]~,求一组解使得 xn−xi ~x_n-x_i~的值最小,若无解输出−1-1。分析:       ~~~~~~不会差分约束的先看

2015-07-25 23:46:10 438

原创 sgu299:Triangle(大水题)

水题就只贴代码了,QAQQAQ。AC code:#include <bits/stdc++.h>#define pb push_back#define mp make_pair#define clr(a, b) memset(a, b, sizeof a)#define rep(i, a, b) for(int i = (a); i <= (b); ++i)#define per(i, a

2015-07-25 12:26:37 350

原创 sgu292:Field for the Cemetery(结论+高精度)

题目大意:       ~~~~~~一个 q×c ~q×c~的矩阵,问最多能放入多少 n×1 ~n×1~的矩阵。分析:       ~~~~~~我们只考虑 n≤q,n≤c ~n\leq q,n\leq c~的情况,其他的情况比较简单就不叙述了。       ~~~~~~我们有最暴力的填法,使得最后空余的矩形为 (qmodn)×(cmodn) ~(q\mod n)×(c\mod n)~;我们也可

2015-07-21 12:01:38 744

原创 sgu291:Evolution(暴力)

暴力题就自己看题意吧,都不想打了 TAT ~TAT~。 AC code:#include <cstdio>#include <cmath>#include <cstdlib>#include <cstring>#include <cctype>#include <algorithm>#include <string>#include <sstream>#include <iostr

2015-07-20 16:57:12 342

原创 sgu290:Defend the Milky Way(三维凸包)

题目大意:       ~~~~~~给出空间中 n(1≤n≤100) ~n(1\leq n \leq 100)~个点,求出其凸包。如果有点在凸包的面或棱上,也要将其算进凸包中,将答案按字典序输出。分析:       ~~~~~~首先我就不吐槽 sgu ~sgu~坑爹的输入了......       ~~~~~~主要就是求解三维凸包,至于凸包面或棱上的点可以在求出凸包后再加进去。凸包上每个面都是

2015-07-20 16:11:24 714

原创 sgu289:Challenging Tic-Tac-Toe(博弈搜索)

题目大意:       ~~~~~~两个人在一个 3×3 ~3×3~的棋盘上分别下 X ~X~和 0 ~0~, X ~X~先 0 ~0~后,初始时棋盘为空。如果有 3 ~3~个同样的棋子在同一行或同一列或同一斜线,那么游戏结束,该棋子方获胜。       ~~~~~~两个人都会用最佳策略。       ~~~~~~现在给你一个局面,首先判断是否合法((也就是是否可能下得到)),然后判断是平局还

2015-07-18 17:32:02 641

原创 sgu288:Best Tournament Schedule(构造)

题目大意:       ~~~~~~一场比赛有 n ~n~个参赛选手,要求选手之间两两都有且仅有一次对决。每一轮中一个选手至多可以对决一次,也就是每一轮选出若干对不相交的选手进行对决。现在要求出最少的对决轮数来结束比赛和此时的对决方案。分析:       ~~~~~~首先确定答案,当 n ~n~为偶数的时候,答案为 n−1 ~n-1~,否则为 n ~n~,另外,当 n=1 ~n=1~的时候,答案

2015-07-18 15:27:35 566

原创 sgu287:Amusing Qc Machine(DP)

题目大意:       ~~~~~~在一个区间[1,n][1,n]中询问一个整数 x~x,你每次可以说出一个数 y~y,机器会告诉你 y~y与 x~x的大小关系。

2015-07-18 14:50:20 783

原创 sgu285:What? Where? When?(状压dp)

题目大意:       ~~~~~~又是一个游戏。这个游戏有两方A,BA,B,AA方问问题,BB方答问题,每个问题都有一个答对的概率,答对了AA的积分+1+1,否则BB的积分+1+1。将一个圆1313等分,逆时针编号,1→121\rightarrow12每部分上都放了一个信封,每个信封内有一个问题。第1313部分放了一个空信封,如果抽到了该部分,那么从nn个在线问题中随机抽一个问。圆上有一个转盘,

2015-06-28 11:56:12 316

原创 sgu284:Grammar(递推+高精度)

题目大意:       ~~~~~~有nn个字符串,每个字符为aa或bb,第ii个字符串可以表示为若干个a,ba,b和整数j(j<i)j(j<i)((表示第jj个字符串))的组合。       ~~~~~~给定一个新的字符串ss,求ss在第nn个字符串中出现了多少次。分析:       ~~~~~~很显然的一个递推关系,处理一下合并的情况就好了,细节有一些,而且要用高精度。AC code:#i

2015-06-27 16:04:22 390

原创 sgu283:Mechanics(计算几何)

题目大意:       ~~~~~~给你平面上两个圆(x1,y1),(x2,y2)(x_1,y_1),(x_2,y_2),以及它们的质量m1,m2m_1,m_2和速度v1,v2v_1,v_2。       ~~~~~~碰撞过程中不考虑能量损失。       ~~~~~~求出在时刻tt的两圆坐标和速度。分析:       ~~~~~~首先我们很容易解个方程求出碰撞时间。问题就是如何计算碰撞后的

2015-06-27 11:43:22 572

原创 sgu282:Isomorphism(polya计数)

题目大意:       ~~~~~~给定一个nn阶完全图,可以把每条边染成mm种颜色,问有多少种本质不同的图。分析:       ~~~~~~这是论文题,给个讲的好点的链接吧:       ~~~~~~http://endlesscount.blog.163.com/blog/static/8211978720122154253812/#include <cstdio>#include <c

2015-06-27 09:10:17 674

原创 sgu281:Championship(map)

题目大意:       ~~~~~~给出两个排名,按照以下要求求出最终排名。如果两个排名的前m(1≤m≤n)m(1\leq m \leq n)个人的集合相同,那么最终排名的前mm个人也是这mm个人,不能通过这个比较顺序的按照字典序排序。分析:       ~~~~~~为啥我觉得最难的是理解题意呢......       ~~~~~~其实我们要知道假如有一个人在两个排名中都在另一个人的前面,那么

2015-06-27 08:36:39 405

原创 sgu280:Trade centers(贪心构造)

题目大意:       ~~~~~~给定一棵nn个结点的树,从中选出一个最小点集SS,使得树中每一个点到点集的最小距离≤k\leq k。分析:       ~~~~~~根据贪心原则,每两个SS中的点,尽量使得两个点之间的距离=2k+1= 2k+1,因为如果两个点距离≤2k+1\leq 2k+1,中间所有的点都是可以覆盖得到的。       ~~~~~~设fif_i表示ii到子树中某一个SS中的

2015-06-26 13:31:47 610

原创 sgu279:Bipermutations(贪心构造)

题目大意:       ~~~~~~i≺ji\prec j意味着在序列中ii的位置在jj的前面。       ~~~~~~构造一个长度为2n2n的序列,由1,1′,2,2′...,n,n′1,1',2,2'...,n,n'构成。       ~~~~~~满足如下条件:       ~~~~~~1.1.对于任意ii满足i′≺ii'\prec i;       ~~~~~~2.2.对于任意i≠

2015-06-24 22:08:10 454

原创 sgu278:Fuel(线性规划)

题目大意:       ~~~~~~对于nn个元素,每个元素有三个非负整数属性a,b,ca,b,c,总共有两个正整数限制A,BA,B,求一个非负实数解集XX,使得Σaixi≤A,Σbixi≤B\Sigma a_ix_i \leq A,\Sigma b_ix_i \leq B且Σcixi\Sigma c_ix_i最大。分析:       ~~~~~~我们很明显可以把三变量a,b,ca,b,c化成两

2015-06-22 13:13:38 1193

原创 sgu277:Heroes(动态凸包)

题目大意:       ~~~~~~动态凸包......分析:       ~~~~~~参见http://www.cnblogs.com/yejinru/p/3156048.htmlAC code:#include <cstdio>#include <cmath>#include <cstdlib>#include <cstring>#include <cctype>#include

2015-06-20 19:32:01 424

原创 sgu276:Andrew's Troubles(大大大水题)

还有这么水的题...... AC code:#include <cstdio>#include <cmath>#include <cstdlib>#include <cstring>#include <cctype>#include <algorithm>#include <string>#include <sstream>#include <iostream>#include

2015-06-20 16:41:28 354

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除