最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

CodeforcesRound#251(Div.2)-C,D_html/css

來源:懂視網(wǎng) 責編:小采 時間:2020-11-27 15:53:54
文檔

CodeforcesRound#251(Div.2)-C,D_html/css

CodeforcesRound#251(Div.2)-C,D_html/css_WEB-ITnose:C題: 思路很簡單。 由題意可知,奇數(shù)的集合有k-p個,偶數(shù)的幾何有p個。 那么我們先選擇k-p-1個奇數(shù),每一個奇數(shù)是一個集合。 然后我們再選擇p個偶數(shù),每一個偶數(shù)是一個集合,如果偶數(shù)的個數(shù)不足,那么就用兩個奇數(shù)去補。 然后我們再把剩下的所有的數(shù)放在一個
推薦度:
導讀CodeforcesRound#251(Div.2)-C,D_html/css_WEB-ITnose:C題: 思路很簡單。 由題意可知,奇數(shù)的集合有k-p個,偶數(shù)的幾何有p個。 那么我們先選擇k-p-1個奇數(shù),每一個奇數(shù)是一個集合。 然后我們再選擇p個偶數(shù),每一個偶數(shù)是一個集合,如果偶數(shù)的個數(shù)不足,那么就用兩個奇數(shù)去補。 然后我們再把剩下的所有的數(shù)放在一個

C題:

思路很簡單。

由題意可知,奇數(shù)的集合有k-p個,偶數(shù)的幾何有p個。

那么我們先選擇k-p-1個奇數(shù),每一個奇數(shù)是一個集合。

然后我們再選擇p個偶數(shù),每一個偶數(shù)是一個集合,如果偶數(shù)的個數(shù)不足,那么就用兩個奇數(shù)去補。

然后我們再把剩下的所有的數(shù)放在一個集合里。

By rowanhao, contest: Codeforces Round #251 (Div. 2), problem: (C) Devu and Partitioning of the Array, Accepted, # #include#include#include#include#include#includeusing namespace std;#define LL __int64#define maxn 330000vectorvec;int a[maxn];int vis[maxn];int main(){ int n,k,p; while(~scanf("%d%d%d",&n,&k,&p)) { int sum=0; int q=k-p; int l,r; l=r=0; for(int i=1;i<=n;i++) { scanf("%d",&a[i]); if(a[i]%2) { sum++; if(r=p*2&&l%2==0) { l=p; cout<<"YES"<1) { vis[i]=1; l--; printf("1 %d\n",a[i]); } } vec.clear(); for(int i=1;i<=n;i++) { if(vis[i])continue; vec.push_back(a[i]); if(l>1&&vec.size()==2) { printf("2 %d %d\n",vec[0],vec[1]); vec.clear(); l--; } } if(vec.size()==0)continue; printf("%d",vec.size()); for(int i=0;i
D題:

思路也挺簡單的。

由題意可知,我們需要把a數(shù)組的所有的數(shù)都變的大于等于x。b數(shù)組里的所有的數(shù)都小于等于x。

x是a數(shù)組和b數(shù)組中的某一個數(shù)。

那么我們枚舉x,然后二分查找。

#include#include#include#include#includeusing namespace std;#define LL __int64#define maxn 220100double num[maxn];vectorvec;LL a[maxn];LL b[maxn];LL sa[maxn];LL sb[maxn];LL n,m;LL dos(LL x){ LL sum=0; LL l,r,mid; l=1;r=n+1;mid=(l+r)/2; while(l=x)r=mid; else l=mid+1; mid=(l+r)/2; } sum+=(mid-1)*x-sa[mid-1]; l=1;r=m+1;mid=(l+r)/2; while(l=x)r=mid; else l=mid+1; mid=(l+r)/2; } sum+=sb[mid]-(m-mid+1)*x; return sum;}int main(){ while(~scanf("%I64d%I64d",&n,&m)) { for(LL i=1;i<=n;i++) { scanf("%I64d",&a[i]); vec.push_back(a[i]); } for(LL i=1;i<=m;i++) { scanf("%I64d",&b[i]); vec.push_back(b[i]); } sort(a+1,a+n+1); sort(b+1,b+m+1); sort(vec.begin(),vec.end()); memset(sa,0,sizeof(sa)); memset(sb,0,sizeof(sb)); for(LL i=1;i<=n;i++)sa[i]=sa[i-1]+a[i]; for(LL i=m;i>=1;i--)sb[i]=sb[i+1]+b[i]; LL minn=-1; for(LL i=0;i

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

CodeforcesRound#251(Div.2)-C,D_html/css

CodeforcesRound#251(Div.2)-C,D_html/css_WEB-ITnose:C題: 思路很簡單。 由題意可知,奇數(shù)的集合有k-p個,偶數(shù)的幾何有p個。 那么我們先選擇k-p-1個奇數(shù),每一個奇數(shù)是一個集合。 然后我們再選擇p個偶數(shù),每一個偶數(shù)是一個集合,如果偶數(shù)的個數(shù)不足,那么就用兩個奇數(shù)去補。 然后我們再把剩下的所有的數(shù)放在一個
推薦度:
標簽: 2 // d
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top