HLJU 15級寒假培訓3 題解

2021-07-09 07:23:47 字數 2567 閱讀 8362

a -

choosing teams

題意:問能組成多少支隊伍,滿足每支隊伍三個人,並且能去k次比賽(上限5次)。

排序後,正常選。

#include#includeusing namespace std;

int a[2100];

int main()

int l=0,r=n-1,t=0;

while(l<=r)

}if(flag)a[100100];

bool cmp(node a,node b)

int main()

node[1010];

bool cmp(node a,node b)

int main()

}if(!flag) ans+=node[i].e;

}printf("%d\n",ans);

}}

e - tian ji -- the horse racing

題意:和歷史上故事情景一模一樣。 思路

一、當田忌最快的馬比國王最快的馬快時,用田忌最快的馬贏國王最快的馬。(贏的最有價值)

二、當田忌最快的馬比國王最快的馬慢時,用田忌最慢的馬輸給國王最快的馬。(輸的最有價值)

三、當田忌最快的馬跟國王最快的馬一樣快時,如果田忌最慢的馬比國王最慢的馬還要快,直接比。如果不是,就讓田忌最慢的馬與國王最快的馬比。(解釋:這裡有一種情況 是田忌最慢的馬和國王最慢的馬平時,不如讓田忌最慢的馬和國王最快的馬比,兩種情況結果都是輸一次,但是這裡犧牲田忌最慢的馬區消耗 國王最快的馬,更有價值。)

#include#includeusing namespace std;

int t[1010],k[1010];

bool cmp(int a,int b)

int main()

else if(t[t_fast]k[k_slow])

else

a[555];

int cmp(node a,node b)

}

g - bone collector  標準的01揹包

#include#include#include#include#include#include#include#include#includeusing namespace std;

const int maxn=1010;

int dp[maxn],v[maxn],w[maxn];

int main()

return 0;

}

i - max sum

最大子段和,需要記載座標。

本題的狀態方程:sum = sum > 0 ? sum+a:a; 

*/ #include#includeusing namespace std;

int main()

if(sum<0)

}if(step!=1) printf("\n");

printf("case %d:\n",step);

printf("%d %d %d\n",max,s,e);

}}

j - 母牛的故事

推出遞推方程式:a[i]=a[i-1]+a[i-3];

#include#includeusing namespace std;

int a[100];

int main()

return 0;

}

k - common subsequence

標準最長公共子串行。

#includeusing namespace std;

char s1[1010],s2[1010];

int m[1010][1010];

int main()

return 0;

}

l - super jumping! jumping! jumping!

標準最長上公升子串行

#includeusing namespace std;

int a[1010],dp[1010];

int main()

}

m - milking cows

題意:0 牛向左看,1牛向右看,問怎麼殺牛,讓牛的總驚嚇度最低(每有一頭牛看到自己同胞被殺,驚嚇度加一)

貪心策略:從左往右把向右看的牛殺掉,再從左向右,把所有向左看的牛殺掉(沒有驚嚇)。

#includeint main()

node[110];

bool cmp(node a,node b)

{ return a.e==b.e? a.s>n&&n)

{for(int i=0;i>node[i].s>>node[i].e;

sort(node,node+n,cmp);

int ans=0,t=0;

for(int i=0;i

2021 1 19寒假打卡Day15

定義如下規則序列 字串 空序列是規則序列 如果s是規則序列,那麼 s 和 s 也是規則序列 如果a和b都是規則序列,那麼ab也是規則序列。例如,下面的字串都是規則序列 而以下幾個則不是 jh15024551551 96371 現在,給你一些由 構成的序列,你要做的,是補全該括號序列,即掃瞄一遍原序列...

2016級ACM寒假訓練(一)

problem a time limit 1000ms memory limit 65535k 跳傘是乙個技術活,某空軍新來了一批新兵,為了訓練新兵跳傘的準確度,指揮官想了乙個好辦法,他在訓練場畫了乙個矩陣,每個格仔有乙個數字,如果某士兵跳到了 x,y 格點,那麼他的得分便是他周圍的八個格仔上的數字...

2016級ACM寒假訓練(三)

題都太簡單了,ak的那麼多,直接貼 了1.problem a time limit 1000ms memory limit 65535k 聰聰的班主任王老師最近有點忙,可是他又是一位非常細心的老師,每次考試成績都有專門的東西來記錄,學期結束的時候給每位學生算了加權之後,他都要 關心關心 成績不好的學...