A - Archery Tournament 题目大意:按时间顺序出现靶子和射击一个位置,靶子的圆心为(x, y)半径为r,即圆与x轴相切,靶子不会重叠,靶子被击中后消失, 每次射击找出哪个靶子被射中,或者没有射中靶子. 思路:关键点在于,圆都与x轴相切,那么我们能发现,如果射击在(x, y) 这个点,包含它的圆只可能是它左边第一个直径>= y的圆c1, 或者是它右边第一个直径 >=y 的圆c2,因为在c1 和 c2之间的圆不可能覆盖到(x, y), 因为它们的直径小于y,在c1左边和c2右边…
2017-2018 ACM-ICPC Northern Eurasia (Northeastern European Regional) Contest (NEERC 17) A 题意:有 n 个时刻,第 i 个时刻要么会在 (xi,yi) 生成一个半径为 yi 的圆,要么射击 (xi,yi) 这个点,如果该点在某个圆内则把对应圆删除并输出该圆的标号,否则输出 -1 .任意时刻圆之间不会相交(可以相切). \(n \le 2*10^5, -10^9 \le x_i,y_i \le 10^9, y…
ACM ICPC 2010–2011, Northeastern European Regional Contest St Petersburg – Barnaul – Tashkent – Tbilisi, November 24, 2010 Problem A. Alignment of CodeProblem B. Binary OperationProblem C. Cactus RevolutionProblem D. Dome of CircusProblem E. Evacuati…
NEERC 11 *wiki链接[[https://acm.ecnu.edu.cn/wiki/index.php?title=2011-2012_ACM-ICPC_Northeastern_European_Regional_Contest_(NEERC_11)]] 某几题解[[http://www.doc88.com/p-7364584446751.html solutions]] Problem A Solved by dreamcloud. 00:22 题意:签到题,求"/"和&…
Problems     # Name     A Addictive Bubbles1 addictive.in / addictive.out 2 s, 256 MB    x438 B Blind Problem Solving1 standard input/output 2 s, 256 MB    x124 C Caravan Robbers1 caravan.in / caravan.out 2 s, 256 MB    x178 D Disjoint Regular Expres…
题意:给一颗仙人掌,要求移动一条边,不能放在原处,移动之后还是一颗仙人掌的方案数(仙人掌:无向图,每条边只在一个环中),等价于先删除一条边,然后加一条边 题解:对于一颗仙人掌,分成两种边,1:环边:环上的边2,树边:非环上的边 考虑1.删除树边,那么只需联通两个联通快,那么方案数就是两个联通块乘积-1(除去删除的边) 2.删除环边,那么我们假设删除所有环,那么图变成了深林,方案数就是深林中每棵树任意两点连接,方案数就是全部的和,先维护一个每个环上的点有多少树边,对于每个树边联通块(大小x)共贡献…
问题是求一个方案,实际隐含一个dp.法力是递减的,所以状态是DAG,对于一个确定的状态,我们贪心地希望英雄的血量尽量大. 分析:定义状态dp[i][p][h]表示是已经用了i的法力值,怪兽的位置在p,怪兽的总血量为h时候英雄所具有的最大血量, 采用刷表法,决策有: 使用雷击,h变成h-L[p],p变成max(p-V,1),如果怪兽移动结束以后在1号位置且没有击杀怪物h-L[p]>0(注意这种情况), 会对英雄造成ceil((h-L[p])/HPm)点伤害,如果dp[i][p][h]-damge<…
其实挺简单的.先直接算出之前已经排在k这个数前面的数字.比如543是三位的,那么100~543都是可以的,两位的10~54. 如果还需要往前面补的话,那么依次考虑1000~5430,5430是上界不能选,10000~54300. 有一种情况样例4是10000~10000,,这样是不会增加的应该输出'0'. #include<bits/stdc++.h> using namespace std; typedef long long ll; ],sz; void dec(ll k) { sz =…
B Bricks 计算几何乱搞 题意: 给你个立方体,问你能不能放进一个管道里面. 题解: 这是一道非常迷的题,其问题在于,你可以不正着放下去,你需要斜着放.此时你需要枚举你旋转的角度,来判断是否可行.至于枚举的范围和步长,看脸乱搞. 代码: //#include<iostream> #include<cstring> #include<cmath> #include<algorithm> #include<fstream> using name…
G: 要你去才Paul的年龄,Paul的年龄在1~n之间,你每猜一个Paul会告诉你,你猜的这个数和他年龄的gcd,问在最坏情况下最少要猜多少次. 题解: 什么是最坏情况,我们直到如果他的年龄是1的话, 你需要猜一边全部素数.所以很明显这就是最坏情况, 如果p,q是素数,p*q<=n, 我们就可以猜p*q,一次就可以去掉两个素数了. 所以这一题就变成了将1~n的素数分成m部分, 每一部分的乘积要小于等于n. #include <iostream> #include <cstdio&…
E: 模拟题,一开始有n个人(有男有女),对于子女来说线粒体DNA是继承母亲的.然后有m个操作(按时间顺序),一种就是给了父亲,母亲的ID,生了一个孩子(编号从n+1开始往下):还有一个就是 -x , 表示ID为x的人死亡.然后给了你k个信息 ,表示id 为 x 的DNA .问你最后存活的人的DNA是不是一样的. 题解:模拟一下 坑:k个给你的DNA,要标记为祖先的DNA 如果存活的人有一些是有DNA(一种),而一些是不知道的,这种情况是POSSIBLY…
K: 给你n个点以及n-1的条边, 问你最少要加多少条边,使得每两个点割去一条联通的边,还可以使的这两个点连通. 有个一个结论,最少添加的边数为(叶子节点数+1)/ 2. 我们可以只考虑叶子节点数应该怎么连了.按dfs序标号 a0 连 an/2  , a2连an/2+1  ·····.如果是奇数个,就把an连a1. 因为a0可以和别的节点连接,但是怎么样才是最好的,要每一个圈都尽量相交. #include <iostream> #include <cstdio> #include…
B: 现在有一种新的2进制表示法,要你求出0~m-1的每个数的表示. 规则如下:n 是满足 m<=2n 最小数. 而0~m-1的数只能够用n-1个位和n个位来表示. 对于n个位表示的数来说不能有n-1个位表示的数前缀.(如果3表示101那么就不能有10去表示前面的数. 要求要全部数的位数加起来最小, 数从小到大排. 题解:我们先要求出n. 如果是m == 2n 来说.我们不会有n-1位来表示数. 证明:我们有 m/2 个 n-1位数,每一个n-1位数在尾部加上0或者1就可以变成n位的数, 1个n…
A: 给你一个矩阵求'/' 和 '\' 围成的图形,简单签到题,有一些细节要考虑. 题解:一行一行的跑,遇到'/'和'\' 就加0.5, 在面积里面的'.' 就加1.用一个flag来判断是否在围住的图形里面. #include <iostream> #include <cstdio> #include <cstring> #include <string> #include <algorithm> #include <cmath> #…
题目来源:http://codeforces.com/group/aUVPeyEnI2/contest/229509 时间限制:2s 空间限制:512MB 题目大意: 在一个车站中有若干人在队列中等待车辆,求所有人等待时间的期望值 首先给定n和q,随后是n行操作: "+ t k":在t时刻有k个人加入队列等待车辆 "- t k":在t时刻有k个人乘车离开队列 然后是q个数字代表在初始时刻车站中有多少个车在等待 求出每个询问对应的所有人的等待时间,如果有人始终等不到车…
Day 1: 早上6点起床打车去车站,似乎好久没有这么早起床过了,困到不行,在火车上睡啊睡就睡到了南京.南航离南京南站很近,地铁一站就到了,在学校里看到了体验坐直升机的活动,感觉很强.报道完之后去吃了一波食堂,感觉南航食堂装修非常有情调,饭菜种类也很多,打菜的小哥很热情,看到我们用的是20元的饭票但没凑够20块,还送了饮料. 下午热身赛前没事干,给jsb传授了一些玩植物大战僵尸2的经验.热身赛的体验并不很好,机器很卡,没有我们平时习惯用的gedit,写代码的时候保存一下就会卡一会儿,一开始PC2…
题解:最大流板题:增加两个源点,一个汇点.第一个源点到第二个源点连边,权为K,然后第一个源点再连其他点(英雄点)边权各为1,然后英雄和怪物之间按照所给连边(边权为1). 每个怪物连终点,边权为1: 参考代码: #include<bits/stdc++.h> using namespace std; #define INF 0x3f3f3f3f ; int n,m,k,s,t,u,v,w,num,num1; struct Edge { int from, to, cap, flow; }; ve…
A. Ascending Photo 贪心增广. #include<bits/stdc++.h> using namespace std; const int MAXN = 1000000 + 10; vector<int> g[MAXN]; int a[MAXN], b[MAXN], sz[MAXN], cnt[MAXN]; bool mg[MAXN], vis[MAXN]; int n, m; bool dfs(int u, int f = -1) { if (g[u].emp…
传送门: Vjudge:https://vjudge.net/problem/Gym-101170F CF: http://codeforces.com/gym/101170 The city of Bath is a noted olympic training ground—bringing local, national, and even international teams to practice. However, even the finest gymnasium falls v…
一.题意 有一个手机,容量为$C$,网上有$N$个app,每个app有个安装包大小$d_i$,有个安装后的占用空间大小$s_i$,安装app是瞬间完成的,即app的占用空间可以瞬间由$d_i$变成$s_i$,而不需要其他多余的空间.问这个手机最多可以安装多少个app,输出最多可以安装的app数量和安装顺序. 二.思路 很显然的$dp$.按照$max(d,s)-s$从大到小排序.$dp[i][j]$表示在前$i$个app中,占用空间不超过$j$的条件下最多可以安装的app的数量.那么,有如下递推式…
训练时间:2019-04-05 一场读错三个题,队友恨不得手刃了我这个坑B. A I J 简单,不写了. C - Cleaning Pipes (Gym - 101485C) 对于有公共点的管道建边,然后染色判是否是二分图. 注意线段判相交的时候,除了两个线段交于起点之外,都要视为相交. #include <bits/stdc++.h> using namespace std; typedef long long LL; + ; ; int dcmp(double x) { ; : ; } s…
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位置时,否则都是加速度运动.这是为了在同等距离的情况下末…
Gym 101482C Cent Savings 简单的dp #include<bits/stdc++.h> #define inf 0x3f3f3f3f #define inf64 0x3f3f3f3f3f3f3f3f using namespace std; typedef long long ll; const int maxn=2200; ll dp[maxn][22],sum[maxn]; int main(){ int n,m; scanf("%d%d",&am…
题目描述: 点击打开链接 这题题意其实很不好理解,你有一个n行的程序,现在程序运行了r时间之后停止了运行,证明此处有一个bug,现在你需要在程序中加printf来调试找到bug所在的位置,你每次加一个printf所需的时间为p,为你在最坏的情况下最少需要多少时间找到bug. 枚举二分三分四分一直到n-1 查询一般二分查找,这个因为有个printf条件可以实现精准3分到n-1分查找,  因为三分的话也可以像二分一样确定到底是哪个  就像1000范围内猜数 如果三分能确定的话就不会用二分 但是三分并…
transaction transaction transaction Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 132768/132768 K (Java/Others)Total Submission(s): 1496    Accepted Submission(s): 723 Problem Description Kelukin is a businessman. Every day, he travels arou…
I. Older Brother Your older brother is an amateur mathematician with lots of experience. However, his memory is very bad. He recently got interested in linear algebra over finite fields, but he does not remember exactly which finite fields exist. For…
L. Sticky Situation While on summer camp, you are playing a game of hide-and-seek in the forest. You need to designate a “safe zone”, where, if the players manage to sneak there without being detected,they beat the seeker. It is therefore of utmost i…
ACM ICPC Kharagpur Regional 2017 A - Science Fair 题目描述:给定一个有\(n\)个点,\(m\)条无向边的图,其中某两个点记为\(S, T\),另外标记\(p\)个点表示有一个学生.现在校车从\(S\)出发,接名单上的学生到\(T\),每个学生等概率地出现在名单上,当校车经过某个有学生的点时,不管名单上有没有那位学生,那位学生也会上车.每个学生有一个\(talk\)值,校车完成任务的花费为:到\(T\)时实际学生的\(talk\)值的乘积模\(1…
2017 ACM ICPC Asia Regional - Daejeon Problem A Broadcast Stations 题目描述:给出一棵树,每一个点有一个辐射距离\(p_i\)(待确定),但\(p_i==0\)的点不能辐射自己,只能由别的点辐射覆盖.求\(p_i\)的和的最小值. Problem B Connect3 题目描述:有一个\(4 \times 4\)的网格,两个人玩游戏,第一个人用黑棋,第二人用白棋.每次选择一列,将棋子扔下去,直到最下一个空的格子.现在给出第一个人下…