<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      CF1954E Chain Reaction

      正在寫數(shù)論分塊,發(fā)現(xiàn)這道題竟然是向上取整的數(shù)論分塊,我直接就去寫了。

      題意概括

      \(n\) 個(gè)怪獸,對于一個(gè)傷害 \(k\),每一次會(huì)對一段連續(xù)的存活的怪物打出 \(k\) 的傷害,對于一堆 \(k\) 求出每一個(gè) \(k\) 的最小攻擊次數(shù)。

      我們先考慮一下對于一個(gè) \(k\) 而言,它的答案是什么。

      可以算每一對相鄰的貢獻(xiàn)是多少,看得出來就是 \(max(0,ceil(\frac{a_i}{k})-ceil(\frac{a_{i-1}}{k}))\)。

      整體就是 \(\sum_{i=1}^{n}max(0,ceil(\frac{a_i}{k})-ceil(\frac{a_{i-1}}{k}))\)

      這個(gè)顯然是數(shù)論分塊可求的。

      熱知識(shí):對于 \(ceil(\frac{n}{l})\),對應(yīng)的右端點(diǎn)是 \(floor(\frac{n-1}{floor(\frac{n-1}{l})})\)。

      我們感覺會(huì)做了,但是我們發(fā)現(xiàn)似乎沒有什么好的辦法清空每一次,寫數(shù)據(jù)結(jié)構(gòu)太麻煩,而且這個(gè)題似乎卡常?反正多了一個(gè) log 是絕對不可能過的。

      所以我們便采取新的策略,計(jì)算每一對相鄰的點(diǎn)對于所有 \(k\) 的貢獻(xiàn)。

      我們使用差分,做數(shù)論分塊就行了。

      注意這個(gè)題卡常,define int long long 會(huì) T。

      代碼。

      點(diǎn)擊查看代碼
      #include <bits/stdc++.h>
      using namespace std;
      namespace BaiBaiShaFeng{
      	const int MN=3e5+315;
      	int n, a[MN], maxn=0;
      	long long d[MN];
      	void update(int l, int r, int val){
      		if(val<0) return;
      		d[l]+=val; d[r+1]-=val;
      	}
      	void solve(){
      		cin>>n; d[0]=1;
      		for(int i=1; i<=n; ++i) cin>>a[i];
      		for(int i=1; i<=n; ++i) maxn=max(maxn,a[i]);
      		for(int i=1; i<=n; ++i){
      			int vala=a[i], valb=a[i-1];
      			for(int l=1, r; l<=maxn; l=r+1){
      				int mra, mrb;
      				if(l>=vala) mra=maxn+1;
      				else mra=((vala-1)/((vala-1)/l));
      				if(l>=valb) mrb=maxn+1;
      				else mrb=((valb-1)/((valb-1)/l));
      				r=min(mra,mrb);
      				if(r==maxn+1) break;
      				update(l,r,(vala-1)/l-max((int)0,valb-1)/l);
      			}
      		}
      		for(int i=1; i<=maxn; ++i) d[i]+=d[i-1];
      		for(int i=1; i<=maxn; ++i) cout<<d[i]<<" ";
      	}
      }
      signed main(){
      	//ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
      	BaiBaiShaFeng::solve();
      	return 0;
      }
      
      posted @ 2025-08-19 10:49  BaiBaiShaFeng  閱讀(10)  評(píng)論(0)    收藏  舉報(bào)
      Sakana Widget右下角定位
      主站蜘蛛池模板: 最近中文字幕完整版2019| 亚洲黄色成人网在线观看| 久热伊人精品国产中文| 91中文字幕在线一区| 国产精品一区二区三区黄色| 国产综合色在线精品| 亚洲欧美自偷自拍视频图片| 最新国产AV最新国产在钱| 国产对白老熟女正在播放| 国产日韩综合av在线| 宝贝腿开大点我添添公视频免| 久久久精品人妻一区二区三区| 国产L精品国产亚洲区在线观看 | 无码精品一区二区免费AV| 亚洲国产成人无码网站大全| 精品亚洲精品日韩精品| 午夜性刺激在线观看| 日韩一卡二卡三卡四卡五卡| bt天堂新版中文在线| 国产亚洲精品AA片在线播放天| 下面一进一出好爽视频| japanese人妻中文字幕| 国产一区国产精品自拍| 在线aⅴ亚洲中文字幕| 激情综合色综合啪啪开心| 亚洲第一香蕉视频啪啪爽| 特级毛片在线大全免费播放| 真人无码作爱免费视频| 久久夜色撩人精品国产av| 久久成人成狠狠爱综合网| 人妻日韩人妻中文字幕| 国产精品大全中文字幕| 免费无码AV一区二区波多野结衣| 国产日韩精品免费二三氏| 国产亚洲av夜间福利香蕉149| 色综合视频一区二区三区| 一区二区三区四区五区色| 337p粉嫩大胆色噜噜噜| 国产激情文学亚洲区综合| 深夜av在线免费观看| 亚洲性线免费观看视频成熟|