最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Codeforces Nebius Welcome Round (Div. 1 + Div. 2)

2023-03-13 12:59 作者:zero_xzp  | 我要投稿

A.Lame King

不難看出里就兩種操作向橫坐標(biāo)移動 向縱坐標(biāo)移動 如果橫坐標(biāo)每次移動中都穿插縱坐標(biāo)移動那么就不用休息 否則要休息

Code:

#include<bits/stdc++.h>

using namespace std;

#define endl '\n'

#define ff first

#define ss second

typedef long long ll;

typedef pair<int,int>PII;

typedef vector<int>VI;

const int N=1e5+10;

ll n,m,t;

void solve(){

ll x,y;

cin>>x>>y;

x=abs(x),y=abs(y);

ll ans=x+y,tt=abs(x-y);

ans=ans+max(tt-1,0ll);

cout<<ans<<endl;

}

int main(){

ios::sync_with_stdio(false);

cin.tie(0);

cout.tie(0);

cin>>t;

while(t--)solve();

}


B. Vaccination

完完全全的貪心,我們在開藥時(shí)候讓開藥的時(shí)刻盡可能的往后就行了 那么st為開藥時(shí)間人w為人最大等待時(shí)間,d為藥的存放時(shí)間 a[i]就是第i個(gè)人的出現(xiàn)時(shí)間 那么假設(shè)在第i個(gè)人開藥

那么藥最晚時(shí)間就是 st=a[i]+w 那么有效時(shí)間就是ed=st+d 如果在這后續(xù)的人都<=ed

那么都可以一起用這包藥 最多用k個(gè)人 k個(gè)人后就需要重新開藥

Code:

#include<bits/stdc++.h>

using namespace std;

#define endl '\n'

#define ff first

#define ss second

typedef long long ll;

typedef pair<int,int>PII;

typedef vector<int>VI;

const int N=1e5+10;

ll n,m,t,k,d,w;

void solve(){

cin>>n>>k>>d>>w;

vector<int>a(n+1);

for(int i=1;i<=n;i++)cin>>a[i];

int ans=0,st=a[1]+w,ed=st+d,s=1;

for(int i=2;i<=n;i++){

if(a[i]<=ed&&s<k)s++;

else{

ans++;

st=a[i]+w,ed=st+d;

s=1;

}

}

ans++;

cout<<ans<<endl;

}

int main(){

ios::sync_with_stdio(false);

cin.tie(0);

cout.tie(0);

cin>>t;

while(t--)solve();

}

C. Pull Your Luck

我們想要從當(dāng)前點(diǎn)轉(zhuǎn)向0點(diǎn) 那么需要轉(zhuǎn)過的扇形至少為:((0-x)%n+n)%n ?而我們轉(zhuǎn)的時(shí)候

使用f的力 那么就轉(zhuǎn)1+2+3+4...+f圈,那么就是f的前綴和不難發(fā)現(xiàn)只要讓f的前綴和%n是((0-x)%n+n)%n即可 而前綴和%n是有規(guī)律的 其規(guī)律就是一個(gè)長度為2*n的重復(fù)序列 所以我們計(jì)算2*n的前綴和看看是否可以到達(dá)即可

Code:

#include<bits/stdc++.h>

using namespace std;

#define endl '\n'

#define ff first

#define ss second

typedef long long ll;

typedef pair<int,int>PII;

typedef vector<int>VI;

const int N=2e5+10;

ll n,m,t,x,p;

ll f[N];

void solve(){

cin>>n>>x>>p;

int ans=((0-x)+n)%n;

// cout<<ans<<endl;

for(int i=1;i<=min(2*n,p);i++){

f[i]=(f[i-1]+(i%n))%n;

if(f[i]==ans){

cout<<"YES\n";

return ;

}

}

cout<<"NO\n";

}

int main(){

ios::sync_with_stdio(false);

cin.tie(0);

cout.tie(0);

cin>>t;

while(t--)solve();

}

D. Accommodation

每一行分開處理 當(dāng)有連續(xù)個(gè)1的時(shí)候兩廳戶和一廳戶的分配才會影響到答案 而兩廳戶比較特殊我們統(tǒng)計(jì)兩廳戶即可 最小的時(shí)候就讓兩廳戶 是兩個(gè)連續(xù)的1即可 不夠的就是補(bǔ)00或者01不會影響的 而最大的時(shí)候盡量不讓兩個(gè)連續(xù)的11為兩廳戶 這而不夠的只能是11了

Code:

#include<bits/stdc++.h>

using namespace std;

#define endl '\n'

#define ff first

#define ss second

typedef long long ll;

typedef pair<int,int>PII;

typedef vector<int>VI;

const int N=5e5+10;

ll n,m,t,x,p;

char s[N];

void solve(){

cin>>n>>m;

int sig=m/2,dou=m/4,sum=m/2+m/4;

int ma=0,mi=0;

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

cin>>s;

int cnt=0;

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

if(s[j]=='1')cnt++;

}

int cut=0,dut=0;

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

if(s[j]=='1'&&s[j+1]=='1'){

cut++;

j++;

}

}

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

if(!(s[j]=='1'&&s[j+1]=='1')){

dut++;

j++;

}

}

mi=mi+cnt-min(cut,dou);

ma=ma+cnt-dou+min(dut,dou);

}

cout<<mi<<" "<<ma<<endl;

}

int main(){

ios::sync_with_stdio(false);

cin.tie(0);

cout.tie(0);

//cin>>t;

t=1;

while(t--)solve();

}



Codeforces Nebius Welcome Round (Div. 1 + Div. 2)的評論 (共 條)

分享到微博請遵守國家法律
炉霍县| 东山县| 阿克陶县| 陆川县| 巢湖市| 福贡县| 肇州县| 稷山县| 五峰| 甘德县| 鄂州市| 噶尔县| 凌源市| 乌兰浩特市| 祁东县| 茂名市| 瑞丽市| 新乐市| 汨罗市| 乌兰察布市| 金乡县| 奎屯市| 濮阳县| 罗源县| 巴塘县| 新安县| 浪卡子县| 离岛区| 同仁县| 屯留县| 扶绥县| 仁怀市| 沙雅县| 江都市| 六枝特区| 中宁县| 中牟县| 焉耆| 新巴尔虎左旗| 蓬莱市| 张北县|