日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

CF 1475 D. Cleaning the Phone 思维模型

發(fā)布時(shí)間:2023/12/4 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CF 1475 D. Cleaning the Phone 思维模型 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

傳送門
題意:一個(gè)人有n個(gè)程序,每個(gè)程序都有占的緩存和價(jià)值。現(xiàn)在要釋放m及以上的緩存,求失去的價(jià)值的最小值。

題解
首先我們知道如果所有緩存加起來(lái) < m 的話,直接輸出 - 1 就行啦。
其次呢,我們發(fā)現(xiàn)價(jià)值只有1和2兩個(gè)值,如果把兩個(gè)價(jià)值分開來(lái)看,顯然選擇同價(jià)值中占緩存多的最優(yōu)。那么我們首先把他們各自按照緩存從大到小排個(gè)序,讓后枚舉價(jià)值為 1 的,記錄前綴和為s,那么只需要在另一個(gè)數(shù)組里 lower_bound 一下 m - s 在哪里即可。
這樣看來(lái)這個(gè)題是老經(jīng)典模型啦,可能是這幾天天天擺爛沒看出來(lái)。

代碼寫的時(shí)候有點(diǎn)混亂,僅供參考。。

//#pragma GCC optimize(2) #include<cstdio> #include<iostream> #include<string> #include<cstring> #include<map> #include<cmath> #include<cctype> #include<vector> #include<set> #include<queue> #include<algorithm> #include<sstream> #include<ctime> #include<cstdlib> #define X first #define Y second #define L (u<<1) #define R (u<<1|1) #define pb push_back #define mk make_pair #define Mid (tr[u].l+tr[u].r>>1) #define Len(u) (tr[u].r-tr[u].l+1) #define random(a,b) ((a)+rand()%((b)-(a)+1)) #define db puts("---") using namespace std;//void rd_cre() { freopen("d://dp//data.txt","w",stdout); srand(time(NULL)); } //void rd_ac() { freopen("d://dp//data.txt","r",stdin); freopen("d://dp//AC.txt","w",stdout); } //void rd_wa() { freopen("d://dp//data.txt","r",stdin); freopen("d://dp//WA.txt","w",stdout); }typedef long long LL; typedef unsigned long long ULL; typedef pair<int,int> PII;const int N=1000010,mod=1e9+7,INF=0x3f3f3f3f; const double eps=1e-6;int n,m; vector<int>a,b; int pre1[N],pre2[N]; struct Node {int a,b; }node[N];int main() { // ios::sync_with_stdio(false); // cin.tie(0);int _; cin>>_;while(_--){a.clear(); b.clear();scanf("%d%d",&n,&m);for(int i=0;i<=n+1;i++) pre1[i]=pre2[i]=0;LL s=0;for(int i=1;i<=n;i++) scanf("%d",&node[i].a),s+=node[i].a;for(int i=1;i<=n;i++){scanf("%d",&node[i].b);if(node[i].b==1) a.pb(node[i].a);else b.pb(node[i].a);}if(s<m) { puts("-1"); continue; }sort(a.begin(),a.end()); sort(b.begin(),b.end(),greater<int>());for(int i=0;i<b.size();i++) pre2[i+1]=pre2[i]+b[i];pre2[0]=-INF; pre2[b.size()+1]=INF;n=a.size();int ans=INF; a.pb(0);int sum=0;for(int i=n;i>=0;i--){sum+=a[i];if(sum>m) break;if(sum==m){ans=min(ans,n-i);break;}int rest=m-sum;int pos=lower_bound(pre2+1,pre2+1+(int)b.size(),rest)-pre2;if(pos==(int)b.size()) continue;ans=min(ans,n-i+pos*2);}printf("%d\n",ans);}return 0; } /**/ 創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的CF 1475 D. Cleaning the Phone 思维模型的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 一级片亚洲 | 色婷婷国产精品综合在线观看 | 欧美韩日国产 | 男生女生操操操 | 夜夜操女人 | 97人人射 | av在线浏览 | 亚洲久爱 | 丁香花高清在线观看完整动漫 | 特级精品毛片免费观看 | 成人激情视频在线播放 | 玉势 (1v1 高h) | 台湾佬美性中文娱乐 | 国产av自拍一区 | 性天堂网 | 国产麻豆久久 | 日韩欧美不卡 | 爱情岛论坛自拍亚洲品质极速最新章 | 亚洲精品欧洲精品 | 天天爽一爽 | 久久艹这里只有精品 | 波多野结衣乳巨码无在线观看 | 天天国产视频 | 黄色污网站在线观看 | 日韩精品一区二区三区不卡在线 | ww久久| 黄黄的网站 | 成年人天堂 | 久久老女人 | jizzjizzjizz亚洲| av黄色在线免费观看 | 在线看片亚洲 | 国内精品偷拍视频 | 日本不卡影院 | 欧美顶级黄色大片免费 | av导航网| 美女久久| 欧美精品久久久久久久自慰 | 亚洲成人日韩在线 | 97人妻精品一区二区三区免费 | 少妇在线播放 | 国产一级影院 | www.三级 | 91亚洲欧美| 欧美色偷偷 | 麻豆影音 | 123成人网 | 日女人免费视频 | 国产精品老熟女视频一区二区 | www.亚洲激情| 中文字幕观看av | 日产精品久久久久久久蜜臀 | 999精品视频 | 欧美激情国产一区 | 绿帽av| 人体av| 亚洲乱码一区二区三区 | 欧美日韩中文字幕一区二区 | 玖玖999| 800av在线视频 | 尤物视频免费观看 | 久久国产精| www.亚洲精品 | 欧美视频在线观看一区二区 | 特高潮videossexhd | 国产亚洲av片在线观看18女人 | 二三区视频 | 日韩一级在线 | 亚洲一区二区三区视频 | 女同一区二区三区 | 粗大黑人巨茎大战欧美成人 | 日本少妇xx | 精品视频网 | 欧美特黄一级视频 | 视频在线观看电影完整版高清免费 | 天天干天天碰 | 狠狠躁日日躁夜夜躁2022麻豆 | 夜夜成人 | 亚洲精品成人av | 国内精品福利视频 | 中文字幕97 | 天天综合久久 | 91精品国产高清 | 美女视屏| 欧美成人aaaaa | 精品视频91| 日韩中文字幕在线观看 | 日本啪啪片 | 国产一区二区内射 | 亚洲成人av中文字幕 | 国产一区二区三区四区三区四 | 国产福利在线免费观看 | 亚洲琪琪 | 精品乱码久久久久久中文字幕 | 亚洲综合成人网 | 午夜免费成人 | 泰国午夜理伦三级 | 亚洲一区二区精品在线观看 | 国产中文在线播放 |