第四場比賽早就做完了,就是一直沒寫總結,感覺這次的題出的真的不好,後台測試資料的強弱就不說了,因為我們也沒做出幾道題,但是就給出的標準輸出都是錯的這一點來說真的不怎麼樣。還有感覺這次的題偏重於數學類的,讓人摸不透出題人到底是想考察什麼的,暈啊~
這次比賽我們隊共做出三題吧,最後那題還是zjh隨手寫的,以為一定會超時的,在最後兩分鐘提交的,唉,這能說什麼呢,rp吧~
說說第四題吧,題意是給出乙個人5*n的矩陣,讓你從矩陣的每行去乙個數,是的這五個數的和0,n為200 ,剛開始的時候,zjh用二分查詢做的,怎麼樣都過不了,後來想想或許hash查詢會快一點,然後改用hash做的。
**:view code
#include #include然後就是第六題了,純數學啊,一直沒弄懂給出的樣例是怎麼得到的,賽後看了解題報告,哭了,真心沒研究過容斥原理啊,好吧,直接用公式吧~#include
#include
#include
#define n 205
#define m 40004
using
namespace
std ;
long
long dat[5][n] , map[2
][m] ;
long
long cal( int i , int j , int
k )int
main()
int np = n *n ;
for( i = 0 ; i < 2 ; i++)
sort( map[i] , map[i] +np );
}//sort( dat[4] , dat[4] + n );
int flag = 0
;
for ( i = 0 ; i < n && !flag ; i++)
}if( flag )
printf (
"yes\n");
else
printf (
"no\n");
}return0;
}
**:view code
#include #include其他題沒細研究,以後練到了再拿來練手吧~#include
#include
#include
#define n 25
using
namespace
std ;
double
p[n] , sum , ans ;
intn ;
void dfs( int index , int
flag )
intmain()
sum = 0.0 ;ans = 0.0
; dfs(
0 , 1
); printf (
"%lf\n
", ans ) ;
}return0;
}
多校聯合(4)
感覺這次數學題挺多的,這次的資料應該不能說水了,有的卡的確實挺厲害,但覺得有的題還是很無語,比如說那個trouble,二分感覺不超的,就是過不了,不是wa,就是tle,還會mle,乙個簡單的hash就可以過。是不是太卡演算法了。題目 這道題真沒什麼好說的 view code 1 include 2 ...
2013 多校聯合5
1005 若沒有邊權,則對點權從大到小排序即可。考慮邊,將邊權拆成兩半加到它所關聯的兩個點的點權中即可。因為當兩個人分別選擇不同的點時,這一權值將互相抵消。智商是硬傷啊 include include include includeusing namespace std double w 10000...
多校聯合訓練4 5773
解題方法 0可以轉化成任意整數,包括負數,顯然求lis時盡量把0都放進去必定是正確的。因此我們可以把0拿出來,對剩下的做o nlogn 的lis,統計結果的時候再算上0的數量。為了保證嚴格遞增,我們可以將每個權值s i 減去i前面0的個數,再做lis,就能保證結果是嚴格遞增的。ac include ...