【2010-2011ACM-ICPC,NEERC,WesternSubregionalContest】訓(xùn)練賽

=================================================================
【Problem A. Area and Circumference】
題目大意,平面上n個矩形币他,且矩形的邊和坐標(biāo)軸平行斥难。找到面積與周長比最大的矩形驼壶,輸出比率水慨,精確4位,設(shè)有spj棵里。矩形個數(shù)不超過1w垮兑,坐標(biāo)限定在[-100,100][-100,100]。
=================================================================
【題解】暴力枚舉即可川队。
=================================================================
double ans=-1;
for(int i=1;i<=n;i++) {
double x1,y1,x2,y2; scanf("%lf %lf %lf %lf",&x1,&y1,&x2,&y2);
double s=(x2-x1)
(y1-y2), l=(x2-x1)2+(y1-y2)2;
ans=max(ans,s/l);
}
cout<<ans;
=================================================================
【Problem C. Canonical Binary Tree】
題目大意力细,現(xiàn)有n個節(jié)點,構(gòu)建一棵二叉樹固额,規(guī)則如下:1.用當(dāng)前剩余的孤立節(jié)點構(gòu)建盡可能大的完全二叉樹艳汽,從編號為0開始向編號增大方向構(gòu)建。例如n=13就構(gòu)成(8)+(4)+(1)三棵完全二叉樹对雪。2.將二叉樹的根節(jié)點從大到小按構(gòu)建順序的逆序依次連接河狐。即(4)和(1)有父親節(jié)點,再和(8)連接有父親節(jié)點瑟捣。
現(xiàn)在給定查詢馋艺,兩種查詢,為A d或B s迈套,其中A,B為字符捐祠,d為數(shù)字,s為字符串桑李。A d類查詢輸出d節(jié)點在二叉樹中的位置踱蛀,輸出方式為'LRLR'表示從根節(jié)點如何走到節(jié)點d。B s類查詢輸出按照s字符串的‘LRLR’走法會訪問到哪個節(jié)點贵白。n<=2e31率拒,詢問Q<=1w
=================================================================
【題解】先將n按二進制分解,并將其存入p[1...i]中禁荒,如13=8+4+1猬膨,p[1]=8,p[2]=4,p[3]=1.讀取查詢,對于A類查詢呛伴,判斷d在哪一棵完全二叉樹中勃痴。將d和p數(shù)組中數(shù)據(jù)比較谒所,大于則減去并輸出R,小于則說明就在這個子樹中沛申。此時問題轉(zhuǎn)換為在一棵完全二叉樹中找一個節(jié)點劣领,輸出LR,很明顯將此時的d轉(zhuǎn)換為齊位二進制铁材,0則為L剖踊,1則為R。對于B類查詢衫贬,找到s字符串前綴的連續(xù)R子串德澈,個數(shù)代表在哪一棵完全二叉樹上,統(tǒng)計前面節(jié)點個數(shù)固惯。后續(xù)處理和前者互逆梆造,L則2,R則2+1,最后結(jié)果與節(jié)點個數(shù)相加即為答案葬毫。
=================================================================
int n,q;scanf("%d %d",&n,&q);
while(n!=0){
if(n>=l){
p[++p[0]]=l;
n-=l;
}
l>>=1;
}
char c;
while(q--){
while(1){scanf("%c",&c);if(c=='A' || c=='B') break;}
if(c=='A'){
int d,i;scanf("%d",&d);d++;
for(i=1;i

            if(d<=p[i]) {printf("L");break;}
            else {d-=p[i];printf("R");}
        }
        d--;
        if(p[i]>1) {
            int t[50]={0};l=1;
            while(1<<l < p[i]) l++;
            while(d>0){t[++t[0]]=d%2;d>>=1;}
            while(l){
                if(t[l]==0) printf("L");
                else printf("R");
                l--;
            }
        }   
        printf("\n");
    }
    else{
        char s[50];scanf("%s",s+1);
    //    cout<<s+1<<endl;
        int len=strlen(s+1),i=1;
        int ans=0;
        while(s[i]=='R'&&i<=len&&i


            ans+=p[i];i++;
        }
        int num=0,pp=p[i];
        if(i<=p[0])
        {   
            if(s[i]=='L') i++;
            while(i<=len){
                if(s[i]=='L') num=num*2;
                else num=num*2+1;
                i++;
            }
            ans+=num;
        }
        cout<<ans<<endl;
    }
}

=================================================================
【Problem E. Express Lines】
題目大意镇辉,一個環(huán)形線路上有n個車站,現(xiàn)在選取若干車站組建新的快車線路贴捡,要求1:新線路至少有2個車站忽肛。要求2:新線路上的車站在原環(huán)形線路上兩兩不相鄰。問能組成多少種不同的新線路烂斋,答案mod k屹逛。例如n=4,可以有兩條汛骂,為(1,3)或(2,4)罕模。
=================================================================
【題解】當(dāng)n<=3必然為0.將環(huán)拆分成鏈,設(shè)f[1..n],g[1..n]. f[i]表示從1i且選擇了第i個車站的方案數(shù)帘瞭,g[i]表示從1i且不選擇第i個車站的方案數(shù)淑掌,明顯有f[i]=g[i-1],第i個車站選擇則第i-1個必然不選.g[i]=g[i-1]+f[i-1],第i個車站不選則方案數(shù)為i-1的方案數(shù)蝶念。輸出f抛腕,g數(shù)組發(fā)現(xiàn)f,g呈相差一位的斐波那契數(shù)列媒殉,猜想通項公式和斐波那契有關(guān)担敌。設(shè)(n , ans),有(3,0)(4,2)(5,5)(6,11)(7,21),設(shè)此時ans=f(n),(注意不是數(shù)組f[n]) ,考慮g(n)=f(n-1)+f(n-2) 的關(guān)系,設(shè)(n , g(n) ) ,有(4,0)(5,2)(6,7)(7,16)令 δ(n)=f(n)-g(n)适袜,設(shè)(n,δ(n))有 ( 4,2 ) , ( 5,3 ) , ( 6,4 ) , ( 7,5 )發(fā)現(xiàn)規(guī)律即δ(n)=n-2,帶回柄错,有f(n)=f(n-1)+f(n-2)+n-2
=================================================================
cin>>n>>k;
for(long long i=4;i<=n;i++){
f[i]=f[i-1]+f[i-2]+i-2;
f[i]%=k;
}
cout<<f[n];
=================================================================
Problem I. "Injurious" Triples
題目大意:有n個元素的序列a1,a2...an,找是否有元素ai,aj,ak構(gòu)成等差數(shù)列舷夺,其中i
=================================================================
【題解】由于元素很小苦酱,可以開桶售貌。設(shè)v[2ai]=i,枚舉i,k,若v[ai+ak] 存在且這個值介于i,k之間說明找到了解。
=================================================================
int n,i,j,k;bk=false;
scanf("%d",&n);
memset(v,-1,sizeof(v));
for (i=1;i<=n;i++)
{
scanf("%d",&a[i]);
v[2
a[i]]=i;
}
for (i=1;i<=n;i++)
{
for (k=i+2;k<=n;k++)
if (v[a[i]+a[k]]!=-1 && iv[a[i]+a[k]])
{
j=v[a[i]+a[k]];bk=true;break;
}
if (bk) break;
}
if (!bk) printf("No\n");
else printf("Yes\n%d %d %d\n",i,j,k);
=================================================================
反思:我tm實在是太菜

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末疫萤,一起剝皮案震驚了整個濱河市颂跨,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌扯饶,老刑警劉巖恒削,帶你破解...
    沈念sama閱讀 218,640評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異尾序,居然都是意外死亡钓丰,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,254評論 3 395
  • 文/潘曉璐 我一進店門每币,熙熙樓的掌柜王于貴愁眉苦臉地迎上來携丁,“玉大人,你說我怎么就攤上這事兰怠∶渭” “怎么了?”我有些...
    開封第一講書人閱讀 165,011評論 0 355
  • 文/不壞的土叔 我叫張陵揭保,是天一觀的道長肥橙。 經(jīng)常有香客問我,道長秸侣,這世上最難降的妖魔是什么存筏? 我笑而不...
    開封第一講書人閱讀 58,755評論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮味榛,結(jié)果婚禮上方篮,老公的妹妹穿的比我還像新娘。我一直安慰自己励负,他們只是感情好藕溅,可當(dāng)我...
    茶點故事閱讀 67,774評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著继榆,像睡著了一般巾表。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上略吨,一...
    開封第一講書人閱讀 51,610評論 1 305
  • 那天集币,我揣著相機與錄音,去河邊找鬼翠忠。 笑死鞠苟,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播当娱,決...
    沈念sama閱讀 40,352評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼吃既,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了跨细?” 一聲冷哼從身側(cè)響起鹦倚,我...
    開封第一講書人閱讀 39,257評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎冀惭,沒想到半個月后震叙,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,717評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡散休,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,894評論 3 336
  • 正文 我和宋清朗相戀三年媒楼,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片戚丸。...
    茶點故事閱讀 40,021評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡匣砖,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出昏滴,到底是詐尸還是另有隱情猴鲫,我是刑警寧澤,帶...
    沈念sama閱讀 35,735評論 5 346
  • 正文 年R本政府宣布谣殊,位于F島的核電站拂共,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏姻几。R本人自食惡果不足惜宜狐,卻給世界環(huán)境...
    茶點故事閱讀 41,354評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望蛇捌。 院中可真熱鬧抚恒,春花似錦、人聲如沸络拌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,936評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽春贸。三九已至混萝,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間萍恕,已是汗流浹背逸嘀。 一陣腳步聲響...
    開封第一講書人閱讀 33,054評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留允粤,地道東北人崭倘。 一個月前我還...
    沈念sama閱讀 48,224評論 3 371
  • 正文 我出身青樓翼岁,卻偏偏與公主長得像,于是被迫代替她去往敵國和親司光。 傳聞我的和親對象是個殘疾皇子琅坡,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,974評論 2 355

推薦閱讀更多精彩內(nèi)容