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

歡迎訪問(wèn) 生活随笔!

生活随笔

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

编程问答

bzoj2375 疯狂的涂色

發(fā)布時(shí)間:2023/12/1 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 bzoj2375 疯狂的涂色 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

瘋狂的涂色

Time Limit: 5 Sec Memory Limit: 128 MB

Description

小t非常喜愛(ài)畫畫,但是他還是一個(gè)初學(xué)者。他最近費(fèi)盡千辛萬(wàn)苦才拜到已仙逝的達(dá)芬奇為師(神仙?妖怪?謝謝)。達(dá)芬奇果然是畫雞蛋長(zhǎng)大的,讓小t一入門就拿著一張白紙條瘋狂地涂色。假設(shè)紙條被劃分成了n個(gè)區(qū)域,用1~n的整數(shù)從左到右順序編號(hào),達(dá)芬奇總共下達(dá)了m條指令。第I條指令是讓小t把編號(hào)為(Ip+q)mod n+1與(Iq+p)mod n+1(p,q為常整數(shù))之間的區(qū)域(連續(xù)的一段區(qū)域)涂成第I種顏色。你可以假設(shè)達(dá)芬奇家中顏料的顏色數(shù)足夠多(達(dá)芬奇是畫雞蛋長(zhǎng)大的)。
現(xiàn)在由于達(dá)芬奇下達(dá)的指令過(guò)多,小t一時(shí)應(yīng)付不過(guò)來(lái)。達(dá)芬奇只讓他回答每一個(gè)區(qū)域最后的顏色。趁達(dá)芬奇還在“五谷輪回之所”忙碌時(shí),小t偷偷的請(qǐng)讓你這個(gè)計(jì)算機(jī)高手幫他算出最后的顏色狀態(tài),并告訴他。時(shí)間緊迫,要快喲!(達(dá)芬奇的指令次數(shù)多到惡心)

Input

為四個(gè)整數(shù)n,m,p,q。

Output

n行,第I行代表最后第I個(gè)格子的顏色。白色編號(hào)為0。

Sample Input

1000 999 341 547

(樣例自己腦補(bǔ)。。。。。)

和bzoj一起水一道題233.。。。

#include<cstdio> #include<algorithm> using namespace std; int fa[1000011],ans[1000011]; inline int find(int i) { return fa[i]==i ? i : fa[i]=find(fa[i]); } int main() {int n,m,p,q,l,r,tmp;scanf("%d%d%d%d", &n, &m, &p, &q);for(int i=1;i<=n+1;i++) fa[i]=i;for(int i=m;i;i--){l=(i*p+q)%n+1; r=(i*q+p)%n+1; if(l>r) swap(l,r); for(int j=find(l);j<=r;j=tmp){ans[j]=i;tmp=find(j+1);fa[j]=tmp;}if(find(1)==n+1) break;}for(int i=1;i<=n;i++) printf("%d\n",ans[i]);return 0; }

轉(zhuǎn)載于:https://www.cnblogs.com/LLppdd/p/8673270.html

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的bzoj2375 疯狂的涂色的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

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