刷题总结——愤怒的小鸟(NOIPDAY2T3)
题目:
题目背景
NOIP2016 提高组 Day2 T3
题目描述
Kiana 最近沉迷于一款神奇的游戏无法自拔。简单来说,这款游戏是在一个平面上进行的。
有一架弹弓位于 (0,0) 处,每次 Kiana 可以用它向第一象限发射一只红色的小鸟,小鸟们的飞行轨迹均为形如 y=ax2+bx 的曲线,其中 a,b 是 Kiana 指定的参数,且必须满足 a<0。
当小鸟落回地面(即x轴)时,它就会瞬间消失。
在游戏的某个关卡里,平面的第一象限中有 n 只绿色的小猪,其中第 i 只小猪所在的坐标为 (xi,yi) 。
如果某只小鸟的飞行轨迹经过了(xi,yi),那么第 i 只小猪就会被消灭掉,同时小鸟将会沿着原先的轨迹继续飞行;
如果一只小鸟的飞行轨迹没有经过(xi,yi),那么这只小鸟飞行的全过程就不会对第 i 只小猪产生任何影响。
例如,若两只小猪分别位于 (1,3) 和 (3,3) ,Kiana 可以选择发射一只飞行轨迹为 y=-x2+4x 的小鸟,这样两只小猪就会被这只小鸟一起消灭。
而这个游戏的目的,就是通过发射小鸟消灭所有的小猪。
这款神奇游戏的每个关卡对 Kiana 来说都很难,所以 Kiana 还输入了一些神秘的指令,使得自己能更轻松地完成这个游戏。这些指令将在【输入格式】中详述。
假设这款游戏一共有 T 个关卡,现在 Kiana 想知道,对于每一个关卡,至少需要发射多少只小鸟才能消灭所有的小猪。由于她不会算,所以希望由你告诉她。
输入格式
下面依次输入这 T 个关卡的信息。每个关卡第一行包含两个非负整数 n,m ,分别表示该关卡中的小猪数量和 Kiana 输入的神秘指令类型。接下来的 n 行中,第 i 行包含两个正实数 xi,yi ,表示第 i 只小猪坐标为 (xi,yi)。数据保证同一个关卡中不存在两只坐标完全相同的小猪。
如果 m=0,表示 Kiana 输入了一个没有任何作用的指令。
如果 m=1 ,则这个关卡将会满足:至多用 aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAE8AAAAXCAYAAABK6RIcAAAFnElEQVRYhe2YCVBTRxjH/+GQW+QQyqGCQEXAWgFRmYBYUdHWG8poFVQ60zqD9apaOsWpxRkqpbbedDpjpVSLFosXggdKERURD6CCwQpeUBG5EgIBkvf1IdCEJEwTImgdfzNv8t6X3W/f/t+3++0uh1jwml6h9aJf4P/Ma/E0QEf2oe3+UWzbm48GRmrTcwrF6iUeMNKgkbb7qdieZoGwj/wxWLvTSM14eDkNJ3PLITR2AnfmuxhroweOBu2oDwN+SRZumPhhor2u1NxSil/ik8ATSU0co1EIX/M+nAbIVCcZBFmLyAzGNHI8l7jcjmvqqkyqY0gDRFQUPZKGRGRTY6eFEdykbbMcyHKoO40e+QaxerLzritFZlSTRJOmVEZC/JJU+irYlfRgSHNO8bv/3XiJ1gdJNZjgPohgOIsyGroXUxDPYlAInZXzpREtxRTjbkdh57qc8unS53NpZUoZNTMdHam9EEXu7QKO2EzFLc+xbaUw1Fh6lo6kpVPCXDP2oxkoiidHY04EWZkoitfnc17bveP4rc4Pi71MOgwCHkq84hE33xH6z8aoFsx8P8H68extTTlqxWo4pyZU8HiobFJnwcCBkctkzJ4RiEA/ezXqKdLH4onxIC0ZT3zD4T2w02TijWXzhkN26gAjQoNICxbTQ+BmoIb7puuIDngHX95s7tXbcTScYFUUT4yaorM4mBCLdRELEJn8EGISgncwCsH+4zFtRTLutSqr9ggZv1ZiXJgPTHv0zaAmawdSnb7F6V1TYda/GUMjVI48bQMjNF/4HvF7c6A7fAAKtq/Gd+XO8DEuwemdsTjySHG8Sf4+g/0PvBDua6Y0i0r4PJyIDYH3lK3I++smewnAKCn3sqKieDoY5OwO2zZ2eFgHgVu2B2nOm7Dzs1D4mLMuDIbBxVxHro4EjzOTcHd0OLjmSqQTV+FiynFcrzeHq4suhAWJWO6/EAcqJBp3qr+Q73HPNN3C79kCDHTTRc6TmYgJtYFO6y38kVcPLe8QeA6UK89UI+vnUnh86A8LZWGnYw3/ZZ/Cv/1+80YcWjoWofvTsCW5HKFrnaGrUEGCqhPr8PHu22jpMomfIv9xJTir5uCRpbQr+m4rkBA3HVZ9PKOrLF7L3ZM4U8X+OthgcYQXjDntwzIbx+4AoyK5GCz3oszTbCQWj0BYgNV/h7fuEATHxcE/ORxFBRVohTLxONC384TfRGu0dZlay1CZXQQtT3aR6yhNQQPsbTozed+ionhiVGQeQxlMMC9qOd5+tt0g1F45jEK44IvJdnKO2P9y9qHQaTH2Wqv2+bXMPTDWFrhvYwpt5SVgOmYR1oyRMQlzwNt9Ajpha7HB11C1rjxHVOsZOwRzUoqAwSFYOdmys5IAN1LyILadhumOHNQ+qJFGBNXhcuINOCyaAhvlSihAzRUoFQzF7PlvQl/9frwQVBKP6q/i0DWC5XtL4GncaRTdwalcAYzGBcHy2m78UCCSZtSGK0i8aoeFQXYKUURNxUjatBE7M8rw79qWXfYUJHyDyg9+RLR3f0UQAxG/ffYkSJjencqpNGyFhSm4JDLFtIWj0aUdSAwRG2rCjChET9qHPZHSocvPT8Jl6wX42l7RPfFv4fDWGBzlxyCGG46lgQ7QFtSDGRGP0+t9YN4P5zzixxeRejQdP+0offactSUGu+oCMWnGFLiZqvECsns19fa2DImq7lBppVBuM8+nc2H2NCr2NrX2UFMiuEf559MpLf085ZVWk0ijg4e+p6e9repLFQU40LNyZtOFHMIC7M8yRfAGRyUZswMt42HwChjW+6ZfEjQQTzlNhQeQaTgXx7odfL2acNrDr+tBUl+C3D8JbhPcYKZilpSntboExQ22eMvZ9JU5pmYaeMgtaoPrBA+Yy+jSTbzXqMerEhwvhH8Aj7nn69n9FKUAAAAASUVORK5CYII=" alt="" /> 只小鸟即可消灭所有小猪。
如果 m=2 ,则这个关卡将会满足:一定存在一种最优解,其中有一只小鸟消灭了至少 aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC4AAAAWCAYAAAC/kK73AAAEbklEQVRIidWXbUyVZRjHf4c35V0P6BFM0YDUwMggdIhOQhNns5kwJ6hUfGhulPYhiw9UjC2aIGaRSq0mkuYL4nsjlMaA8JXgoEFEIoFHUgKBI3DgvNw9Im8eIJ8U1/xvz57zXLvP//rtvu7nuu9HISTxBMri/wZ4WA2A6//kWGoK2de6RzeD5Htk6w4KGo2DgoLO+mKy0lNJTv2K7AsNdP1L3fX1J9mWfJCrg9FEn7T5Yq3LOBFxpk2MpnSX48WsKTGi4E5vwKQVZdtXiGmuU4WP3ywxyZK7yGJmbI5oNA7vcacoRkx0XCFyWgdij3mpdFNzNJu2kCiet78X0Z5LIqFmPT/V13KlrAJNYyFxPvBb2kbSq+RX+/GC62s5ceg2C9b549gT0FJV6U/KllVMH6u4BzA+iHc2z5N+NXGt2SDb2upx8PbJUHeK/beC+CTAqTfiSMCbr5mNMqFr1WHhsoyIZ21le8uacUPTZc4c2EXSezGsid1PvUHQXnWAuPCFzFv6Nvtrhyuxges533Nj7noCnUf2NjXl88URT7bmfsnL4xWjC46lLfadhXyW8i1F1k9jo/6cd7ddwyvQgcrcNJKOXmdIkY0NnN5bh390EMPyGNuoOplERMASUi/8QZl0aU2yueWBW43zwsddTycqwoJr2HnKi4S0D1gdqJQMbPHwVg5Zc8a/8si86kd0sJKh3AZu/pzFiV9aUM70xrpdTcaGhUTu02AcMnYEyWuH7aL4LZXAKURs2LRdXNKapFiXuPKxt8Bigdhzw7yPGUXDdyFC9dJe0TBCixtQt6g7ECVUd5u7b4qo7h7Ndth1lR9O35TuHbiti8HfQdGzFAqOV8PscIInmNmY/qYgo4IZ6xcx8YEZrJkSvoUtCy1Bo0YjsyPKezk1eRyvkXrC8jg29DZk0Xyew+XgvTKUyWbrRDQXsbvck3WhKnkJLJT4vugOTm44W44auInGoiwuM4GIjaG49v5DW5rFBYM7S5dNR9FcR5O+H5vbZzMonbaWJW4yKUQnmt+1TH11Fc+MHS1w0cLFgyUI11d4/QWH3qCO6h/PobWfS5hrCTvS1ej638BWzmdcZHJkGJPNuUUHFZkJfJiWQ01H3+FEaq3qXSTfiOLr+ADs5HHL2IDay8kq1uG8NBK/Pm4pmUEnTXF7DnHxIezeGTuwXNoukXlWxZpPnxpqLtr49XAqicfaSEwMJvqNxUyz1NJimkFK7mYClfI38geDOyxiT7P50c2WwFQ11ZuMuHu6YTcon7Ykk0KX1XzkYT3Uy2ISEdkaaksvUXlTx9gJnvg+54XrGPkbj3zwEaQYMxEvb/NoO+q9+TiHv8/0Ybh7ZOGAh/8iPB42cZ/NfU/GFg4tdkKhUNy77EOls8Z/+EDqKGdfnh0rV3pi8yhUradY7qjo53AI/oZb+vuHKO428z7oyrMlaHSDQK1cmD1/DqqRZs9c3Y1UVrTiLpXf+VHOncYm1EVlNOoHWBQ2k5gz3xelpTn4E6Yn9pvzH1Edo5MeWZZFAAAAAElFTkSuQmCC" alt="" /> 只小猪。
保证 1≤n≤18,0≤m≤2,0<xi,yi<10,输入中的实数均保留到小数点后两位。
上文中,符号 aaarticlea/png;base64,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" alt="" /> 分别表示对 c 向上取整和向下取整,例如:
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAH8AAAAWCAYAAADpRkOBAAAFXklEQVRoge2ZC1BUVRzGvxVEQFYea2CDIbSkvBwVkwRpbBR1eeT4CJhpmdGwJipr0hlMLfM1leErSG0sq0kw0kYSmRQ0lJkYZGNNVBwDQSLTCRJkV1iWfdx/dyUeC7Kvu8vqwG9mZ++55/zPOd/9zj3n7FkesWCEYckoe3dgBPvhqJdSNyA/8xtIZUzvvTFCJK9ZibCxXUlS3kZF4WlcqG2DS0AERLGR8HPlmdcqdeDP0lJ0TI9BML83trMmB7uyq6HsucPD2KkrsDZJCCezpVmArfWTArckhSiS1EPhJsRskQizfJ3RHT3k+qkv90soxRPkFjyboqOjuz4L36XiewybyZCsYjfF+UC3TPR+BAtpp1RODJkA0051hbtoxbPubOwMOtCg0ctuK1tHou52oyMp1APkuriQZKbUbQ1sqF/bKqGMuCCKWvsDVdTUkDRvE83zmUhxu6Uk+z94qPUPNF/gQYm/yAd2vukkpQQ/T+nHLtHtVjk1XS+iXcsndj0A39VU1makJUZB9SUnqKDoe0rzw0PN16eNSld5E3+ozbeFfm0jnUj2JPivo987em5S00/LiA+2veP/0MAnYXv9JpqvpptfLKXUvEa2y31QVtH2YJ2RT9Jb5QoTm2yhvLmPm/nc9Ktq99A0dpB4iM/T/b4ZsjOUyGfjAzfRFWX/KNvrN3HDp4HKOxUfxHvr7xDZ9TAu3o+96ES7ihkktj9m7g8eCbjpb686hSr22+MpT/1Nlmsg5gSw37XHcapBbYuOG8TReBEdzpiyLOEh9xmo2joBhzDMC3SxasceLbjoJ7aMAlr2StHcDr0h4ugOX3fdxS1c+putZ/JoK/fbMCaaPwid9SgqbsR48WEkTLDTr0bmLs6kp2LnlQ4jBXngR32EnK2z4Gqttk3Sz4ObfwieQBmayi/gjjoKgT0eO8DJSRenRofa1JmzHxz0czCf0FKSgS8VYhzKmA9Pe83mPGf4PrcAsb7Gp80xwvEcR3tfTNfvGp6GVOEhfHp1B7b8LMZ3SyawtrOLSaMEZ2t0pgsQILDwreeg3+JnQa0l2LrxL7yZX4DFPg6WVsMdnhtCk95G6BA3a5Z+l3BsLvgKDfGv4cjSybgsikWIkxztLgLI5br8GZj3tLNlHeGg3zLzVfXIXvMZ3Pccx4aZbo/lFo4TZuvnwSX4VeTeSMaOyouobhkF76BwPNP8MaYeBcYlpiHaDlOn+eZr7iB//UbcSPkaW+Z62f98mGnBuc2rse+a0khBdu2NeB8H14eD09aUi34HPibNfAGTdNfa28h5PQv1CEfGthh4Weo9B/3mma9tQtGH6ZAsysT2+ePRO9kRZNIjOC9IwpKAITmI7YU3Gl7CqZjmqDJa1Nl/HLfBajX9SlQffAVpp4GY/bl4J2iM5X3ioN9089kRVrJhEVaeD0WyKgPvne3OIGjkN/DrtQgcPqcTrkHDt0swc1UF5uZcxNGXJ+o3wighV3bFaRkr/KHI42P6yg2Yzr0mw1hLv7YF5XvFeHF9FWKySpH9xmRwsJ6TfhPNV6Dyk1gs2FnJSqtEpnRgiYj9WZjyQIUWsrpqNFMT/qiTsalu8Rr8+1sBThblYrtEl76CA9v2wi0hCqLFczDBettwG8BVP0F9rw6S07k4+Hk2rvosx77Lx5AYyrfvsql33mfgbNss1PeotuomyQyd3hrlUTreNZP++jV3SfJjDuUVX6JbbVqDob3YXr9t3jdHDwhDPWxS9WNBf/0OAkS8JLZffwbB7pv1EewHT/f696S0rbheXgUKiUSIpx0Pbh7AQFZdjqvqIESGeWFIejPM9OubP8KwYmTaH8b8B1B10frNjCTFAAAAAElFTkSuQmCC" alt="" />aaarticlea/png;base64,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" alt="" />
输出格式
对每个关卡依次输出一行答案。
输出的每一行包含一个正整数,表示相应的关卡中,消灭所有小猪最少需要的小鸟数量。
样例数据 1
样例数据 2
输入 [复制]
3
2 0
1.41 2.00
1.73 3.00
3 0
1.11 1.41
2.34 1.79
2.98 1.49
5 0
2.72 2.72
2.72 3.14
3.14 2.72
3.14 3.14
5.00 5.00
输出
2
2
3
样例数据 3
输入 [复制]
1
10 0
7.16 6.28
2.02 0.38
8.33 7.78
7.68 2.09
7.46 7.86
5.77 7.44
8.24 6.72
4.42 5.11
5.42 7.79
8.15 4.99
输出
6
备注
【样例1说明】
这组数据中一共有两个关卡。
第一个关卡与【问题描述】中的情形相同,2 只小猪分别位于 (1.00,3.00) 和 (3.00,3.00) ,只需发射一只飞行轨迹为 y=-x2+4x 的小鸟即可消灭它们。
第二个关卡中有 5 只小猪,但经过观察我们可以发现它们的坐标都在抛物线 y=-x2+6x 上,故 Kiana 只需要发射一只小鸟即可消灭所有小猪。
【数据规模与约定】
数据的一些特殊规定如下表:
aaarticlea/png;base64,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" alt="" />
题解:
状压dp,dp[s]表示在打到s状态的猪下至少需要多少只小鸟。g[i][j]表示打到了第i和j只猪的情况下可以达到的状态,预处理即可,得到dp方程:
dp[s|g[i][j]]=min{dp[s|g[i][j]],dp[s]+1};
代码:
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cmath>
#include<ctime>
#include<cctype>
#include<string>
#include<cstring>
#include<algorithm> using namespace std;
const int M=;
const int inf=0x3f3f3f3f; struct point
{
double x;
double y;
}p[M]; int T,n,m,g[M][M],s=;
int bit[],dp[];
double A,B; inline void calc(int i,int j)
{
double a1=p[i].x*p[i].x,b1=p[i].x,c1=p[i].y;
double a2=p[j].x*p[j].x,b2=p[j].x,c2=p[j].y;
if(b1==b2) return;
A=(c1*b2-c2*b1)/(a1*b2-a2*b1);
B=(c1*a2-c2*a1)/(b1*a2-a1*b2);
if(A>=) return;
for(int k=;k<=n;k++)
if(abs(A*p[k].x*p[k].x+B*p[k].x-p[k].y)<=1e-)
g[i][j]=g[i][j]|(<<(k-));
} inline void pre()
{
for(int i=;i<=n;i++)
for(int j=;j<=n;j++)
{
if(i==j)
{
g[i][j]=<<(i-);
continue;
}
else calc(i,j);
}
} int main()
{
//freopen("a.in","r",stdin);
//freopen("a.out","w",stdout);
bit[]=;
for(int i=;i<=;i++)
bit[i]=bit[i-]*;
scanf("%d",&T);
while(T--)
{
memset(dp,inf,sizeof(dp));
memset(g,,sizeof(g));
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)
scanf("%lf%lf",&p[i].x,&p[i].y);
pre();
dp[]=;
s=(<<n)-;
for(int i=;i<=s;i++)
for(int j=;j<=n;j++)
for(int k=;k<=n;k++)
dp[i|g[j][k]]=min(dp[i|g[j][k]],dp[i]+);
cout<<dp[s]<<endl;
}
return ;
}
刷题总结——愤怒的小鸟(NOIPDAY2T3)的更多相关文章
- NOIp2018停课刷题记录
Preface 老叶说了高中停课但是初中不停的消息后我就为争取民主献出一份力量 其实就是和老师申请了下让我们HW的三个人听课结果真停了 那么还是珍惜这次机会好好提升下自己吧不然就\(AFO\)了 Li ...
- LeetCode刷题系列
LeetCode 我们工作面试和提高自身数据结构和算法能力的时候往往需要刷刷题,我选择LeetCode是通过一个留学论坛了解的.专业,覆盖语种全面. 提前说说刷题的心得: 尽量手写代码,少使用IDE的 ...
- ife任务刷题总结(一)-css reset与清除浮动
本文同时发布于本人的个人网站www.yaoxiaowen.com 百度创办的前端技术学院,是一个面向大学生的前端技术学习平台.虽然只有大学生才有资格报名,提交代码进行比赛排名.但是这并不妨碍我们这些初 ...
- 刷题ING...
我用codeVS刷题.. 努力准备!!
- XidianOJ 1020 ACMer去刷题吧
题目描述 刷题是每个ACMer必由之路,已知某oj上有n个题目,第i个题目小X能做对的概率为Pi(0<=Pi<=1,1<=i<=n) 求小X至少做对k道题的概率 输入 第一行输 ...
- 【BZOJ-4590】自动刷题机 二分 + 判定
4590: [Shoi2015]自动刷题机 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 156 Solved: 63[Submit][Status ...
- NOI题库分治算法刷题记录
今天晚自习机房刷题,有一道题最终WA掉两组,极其不爽,晚上回家补完作业欣然搞定它,特意来写篇博文来记录下 (最想吐槽的是这个叫做分治的分类,里面的题目真的需要分治吗...) 先来说下分治法 分治法的设 ...
- NOI题库刷题日志 (贪心篇题解)
这段时间在NOI题库上刷了刷题,来写点心得和题解 一.寻找平面上的极大点 2704:寻找平面上的极大点 总时间限制: 1000ms 内存限制: 65536kB 描述 在一个平面上,如果有两个点( ...
- 用js刷题的一些坑
leecode可以用js刷题了,我大js越来越被认可了是吧.但是刷题中会因为忽略js的一些特性掉入坑里.我这里总结一下我掉过的坑. 坑1:js中数组对象是引用对象 js中除了object还有数组对象也 ...
随机推荐
- ef导航属性
https://msdn.microsoft.com/en-us/data/jj574232.aspx 场景是 A表中有B,B表中又C.都是一堆多的关系.怎样Mapping是个问题啊. var ...
- mysqlsla安装和使用介绍
安装mysqlsla源码路径:https://github.com/daniel-nichter/hackmysql.com源码存放路径:/usr/local/src1.获取源码如果没有git命令,请 ...
- codevs 1992 聚会
时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 小S 想要从某地出发去同学k的家中参加一个party,但要有去有回.他想让所用的 ...
- (七)VMware Harbor 问题:Get https://192.168.3.135:8088/v2/: http:server gave HTTP response to HTTPS client
(一)问题描述 登陆时,报错 docker Get https://192.168.3.135:8088/v2/: http:server gave HTTP response to HTTPS cl ...
- 使用jQuery 发送Ajax
jQuery AJAX 方法 AJAX 是一种与服务器交换数据的技术,可以在不重新载入整个页面的情况下更新网页的一部分. 下面的表格列出了所有的 jQuery AJAX 方法: 构建页面:jqlogi ...
- spring源码学习之容器的基本实现
最近想拿出一部分时间来学习一下spring的源码,还特意买了一本书结合来看,当然主要是学习并跟着作者的思路来踏上学习spring的源码的道路,特意在此记录一下,<spring源码深度解析> ...
- NSLocale
1.创建本地化对象 // 根据本地标识符创建本地化对象 NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier"e ...
- linux配置nodeJs环境教程
来自阿里云:https://help.aliyun.com/document_detail/50775.html
- 收集自网络上有关Kali的各种源
更新源总结 #更新源 gedit /etc/apt/sources.list #中科大kali源 deb http://mirrors.ustc.edu.cn/kali kali-rollin ...
- Codeforces Round #877 (Div. 2) D. Olya and Energy Drinks
题目链接:http://codeforces.com/contest/877/problem/D D. Olya and Energy Drinks time limit per test2 seco ...