- 博客(23)
- 收藏
- 关注
原创 BZOJ 4803(逆欧拉函数-搜索)
已知phi(N),求N。由于N的素因子一定是phi(N)的某个因子+1 计算出N所有可能的素因子暴搜#include<bits/stdc++.h> using namespace std; #define For(i,n) for(int i=1;i<=n;i++) #define Fork(i,k,n) for(int i=k;i<=n;i++) #define ForkD(i,k,
2017-10-31 18:15:17 481
原创 HK 2016(Peak Tower-矩形面积并)
>在W∗HW*H(m2m^2)的方框里,由n个矩形(坐标平行于坐标轴),每个矩形开始在(sx,sy)(sx,sy),且以(vx,vy)(vx,vy)的速度匀速移动。问在0~Es的时间里,方框内被矩形覆盖的最小面积。 矩形面积并,处理出若干个关键时间点(线线相撞的时刻)。#include<bits/stdc++.h> using namespace std;#define For(i,n) fo
2017-10-30 12:19:31 369
原创 HK 2016(Special Tour-构造)
给1个n*m的矩阵,你需要找一条哈密尔顿回路,使得任意2点间曼哈顿距离为2或3.小数据暴力写插头,连边 大数据,黑白染色,对每种颜色连环,再连成一个大环。//由于构造方法过于复杂,用了网上的另一种讨论:#include<bits/stdc++.h> using namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(
2017-10-30 08:03:19 424
原创 CF 844E(Binary Matrix-压缩存储的矩阵的连通块)
给1个n*m的01矩阵,求1的连通块个数 注意每行的每连续4个数压缩成一个16进制数输入 (1 ≤ n ≤ 212,4 ≤ m ≤ 214,4|m(1 \le n \le 212, 4 \le m \le 2^14 , 4|m 对于每一行存储每个位置属于哪个连通块,用并查集向下转移,如果有连通块无法向下连通则累加答案#include<bits/stdc++.h> using name
2017-10-28 21:25:31 527
原创 Java BigDecimal 合集
HDU 1753 2个小数相加import java.math.*;import java.util.*;public class hdu1753 { public static void main(String Args[]) { Scanner cin=new Scanner(System.in); while(cin.hasNext()) {
2017-10-27 22:45:08 276
原创 CF 833A(Automatic Door-计算题)
某个自动门运作规则为: 1. 若人来时关闭,则瞬间开启,d秒后关闭 2. 若人来时开启,则什么也不发生 现在有n名员工和m名客户经过自动门,n名员工的进出时间为a,2a,⋯,naa, 2a, \cdots , na, 客户的为t1,t2,⋯,tmt_1,t_2, \cdots ,t_m 1 ≤ n, a,t_i ≤ 10^9, 1 ≤ m ≤ 10^5, 1 ≤ d ≤ 10
2017-10-26 12:58:32 482
原创 HK 2016(Colourful Graph-构造)
有一幅无向连通图G(n,m),无重边无自环G(n,m),无重边无自环。 You are given two k-colourings s and t. You want to transform from s to t step by step. In each step, each vertex may change its colour to one of its neighbours’
2017-10-24 17:28:08 423
原创 Codeforces Round #441 (Div. 1, by Moscow Team Olympiad)
A Classroom Watch显然sum of digit 不会超过9*9 暴力枚举#include<bits/stdc++.h> using namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(i,k,n) for(int i=k;i<=n;i++)#define ForkD(i,k,n) for(int i
2017-10-17 23:58:40 370
原创 ASC 46
A Astronomy Problem直接双指针。B Bipartite Bicolored Graphs#include<cstdio>#define LL long long#define MAXN 301const int MOD = 175781251;int c[MAXN][MAXN], ans[MAXN][MAXN], inv[MAXN];int pow2[MAXN], pow
2017-10-15 16:27:13 458
原创 ASC 19
D DNA Analysis暴力枚举第一次翻转,记正反串。 折半搜索#include<bits/stdc++.h> using namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(i,k,n) for(int i=k;i<=n;i++)#define ForkD(i,k,n) for(int i=n;i>=k;i
2017-10-15 09:10:16 482
原创 Wannafly模拟赛4
A Treepath 给定一棵n个点的树,问其中有多少条长度为偶数的路径。路径的长度为经过的边的条数。x到y与y到x被视为同一条路径。路径的起点与终点不能相同。#include<bits/stdc++.h> using namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(i,k,n) for(int i=k;i
2017-10-14 04:08:56 568
原创 ASC 16
A Cactus 给一棵树,可以连边(不能连重边),问连出仙人掌的方案数。 把模型转化为,给树染色,要求相同颜色的形成一条长度大于1的链或单点,树形dp#include<bits/stdc++.h>using namespace std;const double eps=1e-10;const double pi=3.1415926535897932384626433832795;c
2017-10-14 00:22:11 471
原创 NWERC 2013
B Battle for Silver容易发现答案最多有4个点,枚举所有4个点一下的完全图。#include<bits/stdc++.h> using namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(i,k,n) for(int i=k;i<=n;i++)#define ForkD(i,k,n) for(int
2017-10-13 00:47:10 391
原创 CODE FESTIVAL 2017 qual A
A Snuke’s favorite YAKINIKU#include<bits/stdc++.h> using namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(i,k,n) for(int i=k;i<=n;i++)#define ForkD(i,k,n) for(int i=n;i>=k;i--)#def
2017-10-11 03:43:06 355
原创 Wannafly模拟赛3 题解
A 反蝴蝶效应 虽然听上去很荒诞,但Alicebell决定去验证这一假说,她将按1 ∼ n的 顺序依次到访过去的n个时间点。 这n个时间点各有一个能源参数A��,即到达这个时间点时,身上必须 保证有A��单位的能量,那之后将会消耗掉一单位的能量。 Alicebell想知道依次到访这n个时间点,最初需要携带至少多少能量。#include<bits/stdc++.h> u
2017-10-10 10:37:34 680
原创 ASC 35
C Spending Budget#include<bits/stdc++.h>using namespace std;const double eps=1e-10;const double pi=3.1415926535897932384626433832795;const double eln=2.718281828459045235360287471352;#define LL long
2017-10-08 18:02:38 414
原创 CF 869E(The Untended Antiquity-Hash值维护连通性)
一个地图,然后三种操作 1.一个矩阵四周加上障碍 (不与任何障碍相交) 2.一个矩阵四周的障碍消除 3.问你两个点之间是否纯在一条路径不经过障碍 矩阵大小2500^2,操作10w树状数组 考虑每次操作定一个hash值,然后每次在那个矩阵上xor那个hash值,问题转化为2点hash值是否相同。#include<bits/stdc++.h> using namespa
2017-10-08 11:22:54 474
原创 Codeforces Round #438 by Sberbank and Barcelona Bootcamp (Div. 1 + Div. 2 combined)
A. Bark to Unlock#include<bits/stdc++.h> using namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(i,k,n) for(int i=k;i<=n;i++)#define ForkD(i,k,n) for(int i=n;i>=k;i--)#define Rep(i,
2017-10-07 10:12:29 446
原创 Asia Regional Contest, Tsukuba, 2016–10–16
A Rearranging a Sequence#include<bits/stdc++.h>using namespace std;const double eps=1e-10;const double pi=3.1415926535897932384626433832795;const double eln=2.718281828459045235360287471352;#define L
2017-10-05 13:21:47 1006
原创 ACM ICPC 2017 Warmup Contest 1 (NCPC 2016)
A Artwork倒跑并查集#include<bits/stdc++.h> using namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(i,k,n) for(int i=k;i<=n;i++)#define ForkD(i,k,n) for(int i=n;i>=k;i--)#define Rep(i,n)
2017-10-04 19:15:08 1585 1
原创 hihoCoder挑战赛31 题解
题目1 : Numbers时间限制:8000ms 单点时限:1000ms 内存限制:256MB 描述 给定n个整数常数c[1], c[2], …, c[n]和一个整数k。现在需要给2k个整数变量x[1], x[2], …, x[k], y[1], y[2], …, y[k]赋值,满足(1)对于所有1 ≤ i ≤ k,都有x[i] ≤ y[i]。(2)对于所有1 ≤ i ≤ n,都存在至少一个
2017-10-02 16:35:36 677
原创 ASC 05 题解
E Graduated Lexicographical Ordering数位dp#include<cstdio>#include<cstring>#include<cstdlib>#include<algorithm>#include<functional>#include<iostream>#include<cmath>#include<cctype>#include<ctime>
2017-10-01 18:58:48 305
原创 ASC 03 题解
A Areas 给不超过80个圆,问把平面分成几份?欧拉公式,注意不同连通块#include<bits/stdc++.h>using namespace std;#define For(i,n) for(int i=1;i<=n;i++)#define Fork(i,k,n) for(int i=k;i<=n;i++)#define Rep(i,n) for(int i=0;i<n;i
2017-10-01 18:28:08 336
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人