Time of Update: 2018-12-05
比賽的時候WA得一塌糊塗~~原因!..讀題粗心了!!上一題的輸出是Case #1: 0 , 而本題居然是Case 1: 1 ...
Time of Update: 2018-12-05
題意: 和POJ2723差不多....唯一的區別在於前一題是把2N個要使分成了N對..而本題是組成了N對..說明可能有些鑰匙出現在多個pair中... 題解:
Time of Update: 2018-12-05
保持w小h大...保持a<=90度..那麼整個圖形相交的大致分為兩種..一種是題目圖所給出的..另一種是當a比較大時,相交的面積為平行四邊形..臨界情況是兩個矩形的兩個角相交...可以計算出臨界時tan(a/2)=h/w
Time of Update: 2018-12-05
題意: 有一個地圖...地圖上有N個city...每個city是都是一個邊長相同的平行於x/y軸的正方形..現在給了每個city的一個點.這個點可能是正方形上邊的中點,也可能是下邊的中點..每個city的地區不能有交集(邊可以重合)..問正方形的邊最長可以是多少.. 題解:
Time of Update: 2018-12-05
赤果果的最小產生樹...於是就用Prim水了...Program:/* ID: zzyzzy12 LANG: C++ TASK: agrinet*/ #include<iostream> #include<istream>#include<stdio.h> #include<string.h> #include<math.h>
Time of Update: 2018-12-05
資料有誤,,,讀入檔案不完整...所以到後面會沒有數可以讀..無語了...真是奇葩... 這道題線段樹離線也可以做吧...我開始用treap做.結果逾時了...splay還是強啊...代碼..參考了幾個大神的..haha593572013 、
Time of Update: 2018-12-05
這道題意思是說給一個連通的無向圖...問其最小產生樹的方案是不是唯一的...所謂唯一就是指滿足最小產生樹的方案只有一種...思路很簡單..先Kruskal找到這個圖的最小產生樹..並記錄邊..然後枚舉刪這些邊的某個..看去掉某邊後得到的最小產生樹的值(其實就是找次小產生樹)..若次小產生樹的值==最小產生樹的值.. 則說明方案不唯一..反之方案唯一.. 這裡有個很重要的地方一定要留意...那就是得到的次小產生樹必須要囊括住所有的點...有trick就是兩點間線段的價值為0.
Time of Update: 2018-12-05
題意: 在幼兒園裡..每個小朋友投一票選舉領導...得票最多的小朋友成為領導(若有多個..則多個領導)..現在有個小朋友相當唯一的領導..於是準備賄賂一些小朋友..讓他們把票投給自己...每個小朋友要買通..必須滿足給他的糖數...問這個小朋友最少用多少的糖使得他成為唯一的leader~ 題解:
Time of Update: 2018-12-05
狀態壓縮DP果然比自己摸索出來的DP效率高多了...406ms..輕鬆飄過~~Program:#include<iostream>#include<cmath>#include<stack>#include<queue>#include<set>#include<algorithm>#include<stdio.h>#include<string.h>#define ll long
Time of Update: 2018-12-05
題意: 有N個宇航員要登入星球..大於等於平均年齡的宇航員是老宇航員...後則是小宇航員...老宇航員能登陸A,C星球..小宇航員能登入B,C星球..而有些對宇航員間有矛盾..不能登入同一個星球...請找出任意可行的一種登陸方案... 題解: 由於老宇航員和小宇航員都共有C...那麼首先看作兩個狀態..登陸C或者不登陸C..所以對於一對敵對關係<a,b>有
Time of Update: 2018-12-05
對於從WINDOWS轉到Opensuse的我們來說,使用解碼包是比較重要的,那麼接下來我們就用一種比較簡單的方法來安裝解碼包。(轉載請標註:源自;Phodal's Blog-www.phodal.com)方法一,使用一鍵安裝一鍵安裝OpenSUSE Codec方法二,使用YAST一個個安裝。列表如下libxine2-codecsk3b-codecsffmpeglamegstreamer-0_10-plugins-badgstreamer-0_10-plugins-uglygstreamer-0_
Time of Update: 2018-12-05
題意: Bob和Alice划拳比賽~~Alice掌握了Bob的出招規律~知道Bob每輪出什麼..而Bob則規定了Alice某些對輪出的必須相同或者必須不同...Alice如果要獲勝..必須所有的局不敗...問Alice有無獲勝的策略... 題解: 這題乍一看和2-sat無關係......要不是放在了2-sat的專題..我也不會往2-sat上套..囧...經驗經驗!!
Time of Update: 2018-12-05
這題一上來首先想到的是能否用數學方法來求得這個點..比如說畫一個半徑最小的圓使其與所有線段相交或相切…那麼圓心就是所求..想法似乎沒問題..但怎麼來求是毫無頭緒~想了良久也沒想出用數學的方法如何?… 還是用枚舉了…題目範圍不大..並且精度要求不高..將整個( 0 , 0 ) ~ ( 100 ,100 ) 的連續空間離散分成1000個每個相距0.1的點..枚舉每個點..定能找到答案..複雜度是
Time of Update: 2018-12-05
題意: 有N個點在二維平面上...兩點間若距離不大於R並且構成的線段中沒有其他的點..則可以連一條邊..現在問..這個圖有多少個產生樹 題解: 覺得這題好屌...一些計算幾的知識+神奇的矩陣+高斯消元(同時要求逆元)... 先構邊...按照題目的要求..ok的就有邊...構邊就直接構造Matrix
Time of Update: 2018-12-05
枚舉每個點對~~判斷兩個之間的直線距離有無被線段給隔斷(兩次差乘判斷)...再Floyd就O了...純粹來保持手感~~但也很囧了...首先是一些地方太大意~~打錯了~~~再一個就是不知為毛G++就是過不了~~我看了好久都沒問題~~用C++交就過了~~囧爆了...Program:#include<iostream>#include<stdio.h> #include<string.h>#include<math.h>#define ex
Time of Update: 2018-12-05
題意: 給一個無向圖..判斷這個圖中的每個邊...any 為其是該圖所有最小產生樹共有的邊...at least one..該邊至少為一個最小產生樹的邊..none..該邊不存在該圖的任何的最小產生樹中.. 題解:
Time of Update: 2018-12-05
這道題一開始題目看錯了...理解了好久才知道題目意思..呃~~其實就是說這些折線疊加..會產生多少拐點... 假設說題目給的是n條直線..疊加以後只會是1條直線...但是當疊加的不是直線而是折線時..疊加出來的就會有很多拐點...易得n條折線疊加..會得到一條有<=n個拐點的直線..根據題目要求..而這個<=的出現有兩種可能: 1、 有折線拐點相同..那麼自然疊加一起只會體現出這一個共同的拐點. 2 、通過疊加拐點糾為了180度
Time of Update: 2018-12-05
USACO本節開頭的TXT將得就是凸包的求法~~ 題目的原意是給出N個點...問最少要用多長的柵欄才能將所有點都圍起來.. 求出平面中這些點的凸包...凸包的周長就是解..很好想到的.. 我是用Graham寫的...好久沒寫凸包了...很不熟練...調了一晚上才出來...再次總結一下Graham求凸包的順序: 1 . 找出最左下方的點...並將其挪到point [ 0 ] 方便操作... 2 .
Time of Update: 2018-12-05
題意抽象: 有點 p 在初始點 ( px , py ) 起逆時針等速度 p.v 沿著綠色大圓 R 轉~~點 Q 在平面上的任意位置 ( 除開灰圓 r 內 ) , 點 Q 可以沿任意方向速度最大為 Q.v 移動...灰圓 r 內部的地區是 Q 不能進入的..問 Q 和 p 最快多久能相遇.... 最基本的思路是二分 , 因為若 Q 與 p 在t時間能夠相遇,那麼 >t 的時間,兩點必能一直相遇...二分時間..假設現在判斷的時間為t,那麼可以馬上得到
Time of Update: 2018-12-05
題意: 主人公在一個類似於塔結構的地方..每一層有一個門..門上有兩個鑰匙孔..只要有其中的一片鑰匙就能開啟門繼續往上走了(一個門可能有兩個相同的鑰匙孔..也可能好幾個門都有相同的鑰匙孔..)..而所有的鑰匙被分成了N個pair..每個pair中只能拿一把鑰匙..現在問主人公最多能進入第幾層... 題解: