UOJ265 【NOIP2016】憤怒的小鳥
1 #include <iostream> 2 #include <cstdio> 3 #include <cmath> 4 #include <cstring> 5 #include <algorithm> 6 #include <string> 7 #include <ctime> 8 #include <queue> 9 #include <vector> 10 #include <cstdlib> 11 using namespace std; 12 typedef longlong LL; 13 const int MAXN = 45; 14 const double eps = 1e-10; 15 int T,n,m,ans,dui[MAXN]; 16 bool vis[MAXN]; 17 double dd[MAXN][2]; 18 double hehe,lim; 19 bool ok; 20 struct node{ double x,y; }a[MAXN]; 21 inline bool cmp(node q,node qq){ if(q.x==qq.x) return q.y<qq.y; return q.x<qq.x; } 22 inline doubleABS(double x){ if(x<0) return -x; return x; } 23 inline void dfs(int x,int num1,int num2,int use){ 24 if(x==n+1) { if(use<ans) ans=use; return ;} 25 double nowy; if(use>=ans) return ; 26 for(int i=1;i<=num2;i++) { 27 nowy=a[x].x*a[x].x*dd[i][0]+dd[i][1]*a[x].x; 28 if(ABS(nowy-a[x].y)<=eps) { dfs(x+1,num1,num2,use); return ; } 29 } 30 int now; double nowx,nowz; int nex=num2+1; 31 for(int i=1;i<=num1;i++) { 32 if(vis[i]) continue; now=dui[i]; if(a[now].x==a[x].x) continue; 33 nowx=a[now].x*a[now].x-a[now].x*a[x].x; nowz=a[now].y-a[x].y*a[now].x/a[x].x; 34 dd[nex][0]=nowz/nowx; if(dd[nex][0]>=-eps) continue; 35 dd[nex][1]=(a[now].y-dd[nex][0]*a[now].x*a[now].x)/a[now].x; 36 vis[i]=1; dfs(x+1,num1,nex,use); 37 vis[i]=0; 38 } 39 40 dui[num1+1]=x; vis[num1+1]=0; 41 dfs(x+1,num1+1,num2,use+1); 42 } 43 44 inline void work(){ 45 scanf("%d",&T); 46 while(T--) { 47 scanf("%d%d",&n,&m); for(int i=1;i<=n;i++) scanf("%lf%lf",&a[i].x,&a[i].y); sort(a+1,a+n+1,cmp); 48 memset(vis,0,sizeof(vis)); memset(dd,0,sizeof(dd)); memset(dui,0,sizeof(dui)); 49 dui[1]=1; if(m!=1) ans=n; else { ans=n/3; if(n%3!=0) ans++; ans++; } 50 dfs(2,1,0,1); printf("%d\n",ans); 51 } 52 } 53 54 int main() 55 { 56 work(); 57 return 0; 58 }
相關推薦
UOJ265 【NOIP2016】憤怒的小鳥
1 #include <iostream> 2 #include <cstdio> 3 #include <cmath> 4 #include <cstring> 5 #include <algorithm> 6 #include &l
【NOIP2016】憤怒的小鳥
數據 需要 消失 int 指令 我們 所在 clas 小鳥 題目描述 Kiana最近沈迷於一款神奇的遊戲無法自拔。 簡單來說,這款遊戲是在一個平面上進行的。 有一架彈弓位於(0,0)處,每次Kiana可以用它向第一象限發射一只紅色的小鳥,小鳥們的飛行軌跡均為形如的曲線,其中
【NOIP2016】天天愛跑步
truct ios 多少 個人 img 自己 ret 一行 速度 題目描述 小c同學認為跑步非常有趣,於是決定制作一款叫做《天天愛跑步》的遊戲。?天天愛跑步?是一個養成類遊戲,需要玩家每天按時上線,完成打卡任務。 這個遊戲的地圖可以看作一一棵包含 個結點和 條邊的樹, 每條
【NOIP2016】蚯蚓(單調隊列)
www. 技術 preview view es2017 span res 最長 blog 題意: 思路: 我們發現,對於任意兩次切割i和j,i<j,在進行完第j次切割後,第i次切割的u/v部分一定大於等於第j次切割的u/v部分,第i次的1-u/v部分也一定大於等
【NOIP2016】換教室
layer 浮點數 min 答案 pro () 大於 row tin Description 對於剛上大學的牛牛來說,他面臨的第一個問題是如何根據實際情況申請合適的課程。 在可以選擇的課程中,有2n節課程安排在n個時間段上。在第i(1<i<n)個時間段上,兩節內容相同
【NOIP2016】提高組
usm 前綴和 sed scanf typedef pac 取余 -s rank Day1 T1玩具謎題 題目鏈接 簡單模擬題,註意一下取余啊方向啊什麽的就行了。 1 #include<cstdio> 2 #include<cstri
【noip2016】【洛谷P2827】蚯蚓
初始 開始 code space cout iostream lag == std 這個題只知道可以用優先隊列去做,但是不知道正解想法,看到題解後恍然大悟,詳情請看代碼中間 #include<algorithm> #include<iostream
【NOIP2016】魔法陣
ace DC abc algorithm 計算 前綴 -m d+ 左面 【Problem description】 六十年一次的魔法戰爭就要開始了,大魔法師準備從附近的魔法場中汲取魔法能量。 大魔法師有m個魔法物品,編號分別為1,2,...,m。每個物品具有一個魔法值,
【noip2016】玩具謎題
max 它的 ios 輸入 pre 字符串 左右 分享 無法 題目描述 小南有一套可愛的玩具小人,它們各有不同的職業。 有一天,這些玩具小人把小南的眼鏡藏了起來。小南發現玩具小人們圍成了一個圈,它們有的面朝圈內,有的面朝圈外。如下圖: 這時singer告訴小南一個謎題:“
【NOIP2016】蚯蚓
題面連結 演算法: 我們將蚯蚓長度分成三個陣列儲存,原先就有、切掉後長度為⌊px⌋、 切掉後長度為x −⌊px⌋。 在記錄下每
【NOIP2016】組合數問題
本題在洛谷上的連結:https://www.luogu.org/problemnew/show/P2822 就在十一假期某學堂裡有幸聽出題人zhx大神講課。。。 都說是水題,但還是需要技巧滴。首先得知道組合數的那個在楊輝三角里體現得淋漓盡致的性質:c[n][m]=c[n-1][m-1]
【P2822】組合數問題【NOIP2016】
題目描述 組合數 Cnm 表示的是從 n 個物品中選出 m 個物品的方案數。舉個例子,從 (1,2,3) 三個物品中選擇兩個物品可以有 (1,2),(1,3),(2,3) 這三種選擇方法。根據組合數的定義,我們可以給出計算組合數 Cnm的一般公式: C nm
2018.11.09【NOIP2016】【洛谷P1600】天天愛跑步(樹上差分)
傳送門 解析: 據說這是NOIP歷年最難一道題。。但是真的沒有寶藏難啊我覺得。。。 思路: 答案分兩類統計,一種是子樹中過來,一種是其他地方過來。那麼路徑就被拆分成兩部分了,一部分是S−>lcaS->lcaS−>lca,一部分
【BZOJ4719】【NOIP2016】天天愛跑步
【題目連結】【思路要點】補檔部落格,無題解。【程式碼】#include<bits/stdc++.h> using namespace std; #define MAXN 300005 #define MAXV 600005 #define MAXLOG 20 te
【NOIP2016】魔法陣(節選自冬雪_狂舞_桀驁-xmy的部落格)
現在來找找AC方式,首先,剖析題目,列出條件:Xa<Xb<Xc<Xd,Xb-Xa=2(Xd-Xc),Xb-Xa<Xc-Xb/3 遇到這種有條件的題,通常把圖形畫出來比較直觀。
【NOIP2016】海港
題目描述 小K是一個海港的海關工作人員,每天都有許多船隻到達海港,船上通常有很多來自不同國家的乘客。 小K對這些到達海港的船隻非常感興趣,他按照時間記錄下了到達海港的每一艘船隻情況;對於第i艘到達的船,他記錄了這艘船到達的時間ti (單位:秒),船上的乘 客數星ki,以及每名乘客的國籍
【NOIP2016】迴文日期
題目描述 在日常生活中,通過年、月、日這三個要素可以表示出一個唯一確定的日期。牛牛習慣用8位數字表示一個日期,其中,前4位代表年份,接下來2位代表月 份,最後2位代表日期。顯然:一個日期只有一種表示方法,而兩個不同的日期的表 示方法不會相同。牛牛認為,一個日期是迴文的,當且僅當表示這個日期的
【bzoj4720】【noip2016】【換座位】期望dp+Floyd
對於剛上大學的牛牛來說,他面臨的第一個問題是如何根據實際情況申請合適的課程。在可以選擇的課程中,有2n節 課程安排在n個時間段上。在第i(1≤i≤n)個時間段上,兩節內容相同的課程同時在不同的地點進行,其中,牛牛預先 被安排在教室ci上
【NOIP2016提高組】憤怒的小鳥(狀壓寬搜)
數組保存 結果 4.0 2.0 pac 之前 第一個 ... 預處理 題目描述 Kiana最近沈迷於一款神奇的遊戲無法自拔。 簡單來說,這款遊戲是在一個平面上進行的。 有一架彈弓位於(0,0)處,每次Kiana可以用它向第一象限發射一只紅色的小鳥,小鳥們的飛行軌跡均為形如的
【題解】NOIP2016憤怒的小鳥
拋物線 post 作用 get spa tchar define bre ini 一眼n<=18狀壓dp……方程什麽的都很顯然,枚舉兩只小鳥,再將這條拋物線上的小鳥抓出來就好啦。只是這樣O(n^3)的dp必然是要TLE的,我一開始這樣交上去顯然跑得巨慢無比,後來轉念一