5 11思維訓練

2021-10-05 23:56:41 字數 1013 閱讀 2162

a - joysticks

題意:注意ab同為11時停止。

#include

using

namespace std;

intmain()

cout<}

b - beautiful paintings

題解:題目要求最大的相鄰的公升序對數,那麼先公升序一遍,然後將相同的數繼續公升序,不斷繼續這個過程。資料不大,直接暴力。

#include

using

namespace std;

int a[

1010

],vis[

1010];

intmain()

cout<}

c - watchmen

題解;兩個式子相等化簡得到(|x1-x2|)(|y1-y2|)=0,即只要x相同或者y相同就能取,n個點裡取兩個點,即cn2,但是完全相同即重複的點不能取,需要減去。設x相同有cx個,y相同有cy個,都相同有sa個,則答案為cx*(cx-1)/2+cy*(cy-1)/2-sa*(sa-1)/2。

順帶乙個pair用法的學習:

作用:將兩個值當作乙個值。

用法(用於map標記的):pairp;

map[p,ll]mp;

mp[p(a,b)]++;

#include

#include

using

namespace std;

typedef

long

long ll;

typedef pairp;

ll x[

200010

],y[

200010];

intmain()

for(i=

0;i) cout<(cx-1)

/2+cy*

(cy-1)

/2-sa*

(sa-1)

/2<}

4 16思維訓練

a 題意 將一根棒子分成四份,成為乙個矩形但不能是正方形,求方法數。題解 矩形對邊相等,有兩對相同的長和寬,即棒子的長度必須是偶數,是偶數才能對半分。然後手推幾組資料可以知道n 2為奇數的時候答案為n 2,偶數n 2 1 include using namespace std intmain b 題...

5 6思維訓練

a guest from the past 題解 暴力迴圈會超時。買玻璃瓶有返還,而塑料瓶沒有,應當優先考慮玻璃瓶。玻璃瓶的實際 為b c,但當前 要 b才能買。設買了n瓶,先減去最後一瓶的錢 不包括返還 然後前面的瓶一定能買下並且 為b c。然後剩餘的錢買塑料瓶即可。include using n...

5 7思維訓練

a far relative s birthday cake 題解 每行每列cn2加起來即可。include include using namespace std char a 110 110 intmain for j 0 j cout b far relative s problem 題解 開...