牛客網暑期ACM多校訓練營(第二場)

2021-08-21 19:42:17 字數 2237 閱讀 5666

a:run

基礎dp,直接做就行了。dp時候求出來到哪個距離有幾種走法,然後求一下字首和。輸出答案的時候減一下就行了。

#include

#include

#include

#include

#include

#include

#include

#include

using

namespace

std;

#define ll long long int

const

int mod=1e9+7;

int q,k;

int a,b;

ll res[100100];

ll dp[100100][2];

void init()

res[0]=0;

for(int i=1;i<=100000;i++)

res[i]=res[i-1]+dp[i][0]+dp[i][1];

}int main()

}return

0;}

d:money

同樣直接dp就行了,每個位置儲存當前店鋪兩種情況(手中有無貨物)的最大利潤,運算元也可以由此推出。直接看**就懂了。。。

#include

using

namespace

std;

#define ll long long

const

int n=1e5+10;

const

int inf=2147483647;

ll a[n];

ll dp[n][2];

ll cnt[n][2];

int main()

dp[0][0]=0,dp[0][1]=-inf;

cnt[0][0]=0;

for(int i=1;i<=n;i++)

printf("%lld %lld\n",dp[n][0],cnt[n][0]);

}return

0;}

i:car

益智題目。。直接找規律或者說公式就行了。。根據下面的提示我們把它擴大就是最終結果。當n為偶數時候,將下面的圖放大,就是彼此都交錯著走這樣就能獲得最大結果,如果是奇數的話那麼中間的行和列不能放置車子。先求出最大能放多少,然後根據損壞的格仔乙個乙個減就行了。

#include

using

namespace

std;

#define ll long long int

int n,m;

int xx,yy;

bool x[100100];

bool y[100100];

int main()

if(!x[(n+1)>>1]&&!y[(n+1>>1)]&&n&1) res--;

printf("%d\n",res);

}return

0;}

j:farm

這道題在每塊地上施肥,我們可以直接把這些都相加,最後看能不能整除原來的數。如果能整除就說明沒有其他種類的肥料,反之就有其它種類的肥料,植物死亡。不過這樣的話數太小例如1,2,3,我們會誤判。所以我們要把每個數對映成為乙個新的值然後再進行計算。

#includeusing namespace std;

#define ll long long int

int t,n,m;

ll hash[1000100];

int main()

for(int i=0;i<=n+1;i++)

for(int j=0;j<=m+1;j++)

now[i][j]=pre[i][j]=0;

for(int i=1;i<=n;i++)

}int x1,x2,y1,y2,z;

for(int i=0;i"%d%d%d%d%d",&x1,&y1,&x2,&y2,&z);

now[x1][y1]+=hash[z];

now[x1][y2+1]-=hash[z];

now[x2+1][y1]-=hash[z];

now[x2+1][y2+1]+=hash[z];

}int res=0;

for(int i=1;i<=n;i++)

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

return 0;

}

牛客網暑期ACM多校訓練營(第二場)farm

時間限制 c c 4秒,其他語言8秒 空間限制 c c 262144k,其他語言524288k 64bit io format lld the first line of input contains 3 integers n,m,t n m 1000000,t 1000000 for the ne...

牛客網暑期ACM多校訓練營(第九場)

做法 看到下標 xor 這種情況就想 fwt 可是半天沒思路,於是放棄了。其實這個 n 瘋狂暗示啊。設未知數向量為 x 列一下方程組就可以發現有 b k sum a i x j 做法就顯然了吧,把 a 和 b 分別 fwt 對應相除然後反變換即可。表示前天才學的 fwt 就不會使了。include ...

牛客網暑期ACM多校訓練營(第五場)

二分答案,然後就轉化為是否滿足 frac d sum s i c i sum s i d sum s i c i d 0 顯然科目越少gpa越高,於是去掉最小的k個判斷即可。include define rep i,a,b for int i a i b i define per i,a,b for...