NWERC 2012 Problem I Idol】的更多相关文章

又是个2-sat的模板题: 反正评委的选择必须有一个是正确的,1错误,那么2就必须正确: 这就是一个2-sat问题. 直接上白书的模板啊,不过稍微要注意的一点是对于第一个点必须要选择,不然就违反了题意: 代码: #include<cstdio> #define maxn 2005 #define maxm 4005 #include<vector> #include<cstring> using namespace std; struct twosat { int n;…
刚刚开始想的是用二分的方法做,没想到这个题目这么水,直接暴力就行: 代码: #include<cstdio> #include<algorithm> #define maxn 1000005 using namespace std; int num[maxn]; int main() { int x,n,y,ma; while(scanf("%d",&x)!=EOF) { ma=x*; scanf("%d",&n); ;i&l…
一个最小费用最大流的简单建模题: 比赛的时候和小珺合力想到了这个题目的模型: 方法:拆点+边的容量为1 这样就可以保证他们不会在点上和边上相遇了! 感谢刘汝佳大神的模板,让我这个网络流的小白A了这个题. 代码: #include<cstdio> #include<cstring> #include<vector> #include<queue> #define maxn 42005 #define inf 99999 using namespace std;…
比赛的时候刷了一点小聪明,发现这个数列是卢卡斯数,一个递推关系像斐波拉契数列的数列: 我不知道怎么证明,如果哪天无意中会证了再加上: 这题唯一的难点就是大数运算: 直接用JAVA 代码: import java.io.PrintWriter; import java.math.BigInteger; import java.util.Scanner; public class Main { Scanner scan=new Scanner(System.in); PrintWriter out=…
一个简单的题: 感觉像计算几何,其实并用不到什么计算几何的知识: 方法: 首先对每条边判断一下,看他们能够把平面分成多少份: 然后用边来对点划分集合,首先初始化为一个集合: 最后如果点的集合等于平面的份数,就说明每块都有一个士兵: 代码: #include<cstdio> #include<vector> #define maxn 105 #define maxm 50005 using namespace std; int a[maxn],b[maxn],c[maxn]; lon…
字符串处理的题目: 学习了一下string类的一些用法: 这个代码花的时间很长,其实可以更加优化: 代码: #include<iostream> #include<string> using namespace std; ]= {"he","h","li","be","b","c","n","o","f"…
题目不难,感觉像是一个拓扑排序,要用双端队列来维护: 要注意细节,不然WA到死  = =! #include<cstdio> #include<cstring> #include<vector> #define maxn 100005 using namespace std; *maxn],count[][maxn],tail,head,n,m,in[maxn]; vector<int>ve[maxn]; int solve(int lab) { head=…
http://acm.hunnu.edu.cn/online/problem_pdf/CERC2012/H.pdf HUNNU11377 题意:飞镖环有十个环,没个环从外到里对应一个得分1~10,每个环有一定的半径,给出n次丢飞镖的坐标,求出得分 思路:直接算出左边离原点的半径判断在哪个环里即可,然后求出半径,一开始将判断全部写成了函数,在循环里调用超时了,将所有判断移到循环内就AC了,坑! #include <stdio.h> #include <math.h> #include…
B - Beer Pressure \(dp(t, p_1, p_2, p_3, p_4)\)表示总人数为\(t\),\(p_i\)对应酒吧投票人数的概率. 使用滚动数组优化掉一维空间. 总的时间复杂度为\(O(\frac{w^n}{n!})\) C - Cycling 最坏情况下(每次到light位置都停下),总的时间花费少于6000s. \(10 \le R_i, G_i\),那么每个灯的周期不超过300. 减速的情况只有当在light位置时,否则都是加速度运动.这是为了在同等距离的情况下末…
http://acm.hdu.edu.cn/showproblem.php?pid=2012 Problem Description 对于表达式n^2+n+41,当n在(x,y)范围内取整数值时(包括x,y)(-39<=x<y<=50),判定该表达式的值是否都为素数.   Input 输入数据有多组,每组占一行,由两个整数x,y组成,当x=0,y=0时,表示输入结束,该行不做处理.   Output 对于每个给定范围内的取值,如果表达式的值都为素数,则输出"OK",否…