
SPOJ
文章平均质量分 67
volzkzg
这个作者很懒,什么都没留下…
展开
-
SPOJ_1_PRIME1
USACO快刷完了,从今天开始写SPOJ的题解了。 这一到题不难。 高斯筛法+埃拉托色尼筛法,先求出1-33000的所有素数,再用这些素数去求得区间内所有素数 /* *NAME: prime1 *LANG: C++ */ #include #include #include using namespace std; int prime[7000]; bool check[1原创 2012-03-30 13:00:35 · 593 阅读 · 0 评论 -
SPOJ_4_ONP
中缀转后缀,没什么好说的 /* *NAME: ONP *LANG: C++ */ #include #include #include using namespace std; int n; string s; void solve(string s){ int stack = 0,pos=0; string tmp1="",tmp2=""; if (s[原创 2012-04-03 12:42:29 · 466 阅读 · 0 评论 -
spoj_15_SHPATH
题目数据范围比较高,用map记录城市,再用dijkstra+heap既可以了AC了 /* *NAME:SHPATH *LANG:C++ *Source:spoj15 */ #include #include #include #include #include #include #include #include #define INF 0x7FFFFFFF using原创 2012-04-06 11:11:53 · 619 阅读 · 0 评论 -
SPOJ_839_OPTM
最小割,该题因为要求XOR后的最小值,我们可以通过二进制的知识知道,XOR后的结果各个位置上是互不影响的,XOR只有在两数不同的时候才会得到1. 于是,我们在建图的时候可以将原图G中每个点属于V拆成31位,每位成为一个点,属于同一位的所有点构成一副新图G‘. 假如新图中任意两位所属的原图中的点相连,那么将新图中这两点连一条容量为1的边. 另外如果该位为已知位,假如它是1,那么将它与原点连一条原创 2012-03-30 13:03:04 · 3556 阅读 · 0 评论