感覺這次數學題挺多的,這次的資料應該不能說水了,有的卡的確實挺厲害,但覺得有的題還是很無語,比如說那個trouble,二分感覺不超的,就是過不了,不是wa,就是tle,還會mle,乙個簡單的hash就可以過。是不是太卡演算法了。
題目:這道題真沒什麼好說的
view code
1 #include 2 #include題目:3 #include 4 #include 5
#define mod 100007
6#define n 6
7#define m 210
8#define _clr(a,val) (memset(a,val,sizeof(a)))910
using
namespace
std;
1112 typedef long
long
ll;13
ll a[n][m];
14ll mark[mod];
15bool
vis[mod];
16int
find(ll key)
1725
intmain()
2641
ll ans,cnt;
42for(i = 0; i < n; i++)
4351}52
int flag = 0;53
for(i = 0; i < n; i++)
5466}67
if(flag) break;68
}69if(flag) break;70
}71if(flag) printf("
yes\n");
72else printf("
no\n");
73}74return0;
75 }
題意:給一些關係,說明兩個人是好朋友,然後有乙個圓桌問是否可以讓所有人都坐下,每個人的兩旁都是自己的好朋友,如果可以就輸出入座的順序
明白了題意之後第乙個反應就是dfs,可是如果是 150 * 150 的dfs怕會超掉,就沒有寫,覺得寫了也是浪費時間,沒想到dfs還真的過了,可能是當時沒有注意到題目中給的 每個人至少有一半的人都是他的好朋友 這句話的作用
view code
1 #include 2 #include題目:3 #include 4 #include 5
#define mod 100007
6#define n 160
7#define m 210
8#define _clr(a,val) (memset(a,val,sizeof(a)))910
using
namespace
std;
1112
intmap[n][n];
13bool
vis[n];
14int
path[n];
15int
sum;
16int
n;17
intflag;
18//
int num;
19int dfs(int
x)20
30for(int i = 2; i <= n; i++)
31if(map[x][i] && !vis[i])
3240
return0;
41}42int
main()
4357 flag = 0
;58 vis[1] = 1
;59 path[0] = 1
;60 sum = 1
;61 dfs(1
);62
if(!flag)
63 printf("
no solution\n");
64}65return0;
66 }
當時看著過的人挺多的,然後我們就一直在看那個題,研究樣例怎麼過,可是n久也弄不出樣例,最後看我們學校的隊都沒人試,也就放棄了,說一定是乙個簡單題,沒那麼複雜,看了解題+標程時我是覺得那個公式挺簡單的,但是怎麼來的,為什麼是那樣,就不懂了,題解裡說是容斥原理,
中等偏難的概率/
組合數學。設卡片的分布p=(p1,p2,...,pn)
,t(p)
表示拿到所有卡片時買的零食數目,有。由容斥原理得,
根據這個公式就可以了,下面是標程裡計算這個公式的核心**
view code
1int temp = 1
<
2 ans = 0;3
for(i = 1; i < temp; i++)414
}15if(num & 1) ans += (1 /tem);
16else ans += (-1 /tem);
17 }
2018多校聯合訓練4
過了6題,第一次進入前100名 1012 直接從1走到n solved by wyq include includeint a 100005 int reabs int x int main return 0 1004 和出題人心有靈犀2333 solved by lyy include using...
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 ...