2018 浙江省賽j zoj4033

2021-08-30 08:44:13 字數 655 閱讀 9628

本題大意:

給你一串數字1為男 0為女 隨著位數增加每個人擁有的寶石數遞增 (從一開始)

要把這些人分為4組

組 1 2為女 組3 4 為男

並且1 3之和 要等於 2 4之和

解法:總值%2==1的話就無法均分 輸出-1

可以的話

從中值開始 貪心一下 取得到就判斷男女 男的就分到3 女的就分到1 

不能取到男的就分到4 女的就分到2

注意精度long long

#include#include#include#includeusing namespace std;

const int maxn=1e6+10;

long long record[maxn];

char clas[maxn];

int main()

long long summid=sum/2;

for(long long i=n;i>=1;i--)

else

}else

else

}} for(long long i=1;i<=n;i++)

printf("%d",record[i]);

printf("\n");//long long

}}

2018浙江省賽 括號序列

你有 n 個元素排成一行,每個元素都由乙個括號 左括號或右括號 和乙個權值構成,我們將第 i 個元素記作 si vi 其中 si 為 或者 vi 為乙個整數 可能為負數 你每次可以選擇一對相鄰的元素,對應的括號為 即找到乙個 k 1 k n 滿足 sk 為 且 sk 1 為 你可以交換第 k 和 k...

2015浙江省賽

zoj 3872 beauty of array 對於每個數,計算這個數被累加的次數。找到這個數左邊這個數出現的地方,在這之間的所有數的數量 這個數後面的數的數量,即為這個數被計算的次數 include include typedef long long ll int a 1000005 post ...

2019浙江省賽

題意 n個點的二叉樹 無向邊 的單向邊,構造一條到達且只到達每個點一次的路徑。題解 兩次dfs。第一次dfs為向i 1優先,2i次之。然而,發現某些點有兩條出路,這是由於該點在最底層 有些點沒有達到,這是因為這些點在最後一層或倒數第二層的右下角 第二次dfs時先判斷該點的右子節點是否達到過,如果沒到...