10.15 lzxkj
幾天前寫的,忘了放了,在此填坑
10月16的題我出的不寫題解了
lzxkj
題目背景
眾所不周知的是, 酒店之王 xkj 一個(gè)經(jīng)常迷失自我的人 有一天, 當(dāng)起床鈴再一次打響的時(shí)候, TA 用 O(1)的時(shí)間在 TA 那早就已經(jīng)生銹的大腦中自動(dòng)生成了一串?dāng)?shù)字, 天啊 TA 們實(shí)在是太亂了 盡管 xkj 對(duì)眼前的世界不屑一顧, 可是 TA 知道, 如果繼續(xù)迷失的話, 自己會(huì)被那個(gè)該死的樓管記上然后站在級(jí)部門口的, TA 再迷失也終究逃不過現(xiàn)實(shí)主義的摧殘。所以, TA 靜下心來, 希望把數(shù)字整理一下(順道再睡一會(huì)兒)
題目描述
在酒店之王 xkj 腦海當(dāng)中生成的數(shù)字十分的雜亂無序, 一點(diǎn)也不當(dāng)年信哥要求的一步到位,合理合法
例如, 有的是這樣的 92839489, 165651, 23 , 9, 00000000
但是有的又是這樣的 283748.2398479, 239.39, 0.0, 00002333.333000000
所以 TA 希望自己可以先把 TA 們整理的科學(xué)一下(直接說科學(xué)計(jì)數(shù)法不就完事了),總而使 TA 們看起來十分的優(yōu)美
例如 92839489 整理成 9.2839489E7
再例如 9 整理成 9E0
還是例如 0.0 或者說是 0 整理成 0
最后比如 00002333.333000000 整理成 2.333333E3
亦或比如 0.0023333 整理成 2.3333E-3
酒店之王 xkj 現(xiàn)在由于還需要加工一下自己的樣品被, 把自己的邊邊角角修一下,所以 TA 只好把任務(wù)交給了已經(jīng)開始讀操前讀的 cdycdy 同志加油!!!xkj 在勝利的彼岸等你!!!
輸入格式
一行,一串?dāng)?shù)字可能是整數(shù),也可能是浮點(diǎn)數(shù)
輸出格式
一行, 表示這一串?dāng)?shù)字用科學(xué)計(jì)數(shù)法表示的格式
樣例輸入1
92839489樣例輸出1
9.2839489E7樣例輸入2
00002333.333000000樣例輸出2
2.333333E3樣例輸入3
0.0樣例輸出3
0樣例輸入 4
10000樣例輸出4
1E4樣例輸入5
10樣例輸出5
1E1樣例輸入6
0.0023333樣例輸出6
2.3333E-3溫馨提示
請(qǐng)您盡量思考一下科學(xué)計(jì)數(shù)法的特殊情況 最好不要被一些稀奇古怪的東東 hack 掉(^_^ ^_^ ^_^ ^_^)
數(shù)據(jù)范圍
保證對(duì)于 100%的數(shù)據(jù)給出數(shù)的長(zhǎng)度不超過 15000 位請(qǐng)您放心的使用各種算法本題十分良心 絕對(duì)不卡時(shí)間(但是不要太過分) -----沃茲基碩德
題解
xjb膜
先判斷是不是整數(shù),如果是整數(shù)就強(qiáng)制把它末尾加上點(diǎn),轉(zhuǎn)化為小數(shù)
然后把前導(dǎo)0和后導(dǎo)0刪除
然后找小數(shù)點(diǎn)位置,有四種情況:
(1)只有.一個(gè)字符,說明肯定是0
(2).后面沒有字符,說明是整數(shù)。輸出第1位,然后一個(gè)小數(shù)點(diǎn),然后輸出后面的位即可。注意末尾的0不能輸出。最后輸出E和小數(shù)點(diǎn)與第一位的距離
(3).前面沒有字符,說明是個(gè)0點(diǎn)幾的小數(shù),同上。注意前導(dǎo)0不能輸出。
(4).的前后都有字符,那么就直接輸出整個(gè)數(shù)即可,在第一個(gè)數(shù)后面加上.,中間的.不輸出,最后還是輸出E和小數(shù)點(diǎn)與第一位的距離
對(duì)于負(fù)數(shù)我們判一下開頭是不是負(fù)號(hào),并把負(fù)號(hào)扔了,如果是,那么我們輸出加上負(fù)號(hào)就行了。
death
題目背景
眾所不周知的是, 酒店之王 xkj 一個(gè)經(jīng)常埋葬死去自己的人當(dāng) TA 再一次從迷失的困境之中走出來的時(shí)候, TA 被某錘姓男子告知:“你違紀(jì)了”違紀(jì)就意味著精神的死亡, 靈魂的無處安放也許這才是最好的歸途......
題目描述
xkj 的靈魂不斷的飄蕩,飄蕩到了食堂的打飯口,TA 無助的望了一眼,下定決心:先把肚 子填飽再說食堂現(xiàn)在還有 n個(gè)食物,每一個(gè)食物都有一個(gè)美味程度 wi,但是同樣也存在一個(gè)費(fèi)用vi,xkj 當(dāng)然希望吃到美食的美味程度總和最大,但是想必你也知道,TA 的飯卡最近有一些拮據(jù)最多只可以消費(fèi) W 元,由于 TA 的靈魂在飄蕩的時(shí)候忘記了帶上腦子(唉,腦子是一個(gè)好東西),所以 TA 找到了還在站級(jí)部的 cdy,希望 cdy 幫 TA 計(jì)算一下,TA 在飯卡不破產(chǎn)的情況下,該如何消費(fèi)使自己吃到食物的美味程度總和最大
輸入格式
第一行一個(gè)整數(shù) n 表示一共有 n 個(gè)食物
接下第 2 行至第 n+1 行每行兩個(gè)整數(shù) vi,wi 表示該食物的費(fèi)用以及美味程度
最后一行一個(gè)整數(shù) W 表示最多可以消費(fèi) W 元
輸出格式
一行, 表示合法消費(fèi)情況下的最大美味程度總和
樣例輸入
4 2 3 1 2 3 4 2 2 5樣例輸出
7樣例解釋
選擇 1,2,4 號(hào)物品
溫馨提示
這不就是一個(gè)裸的 01 背包嗎??????
數(shù)據(jù)范圍
保證對(duì)于 100%的數(shù)據(jù)1<=n<=100 1<=wi<=1000 1<=vi<=10^7 1<=W<=10^9
題解
根據(jù)數(shù)據(jù)范圍,我們把消費(fèi)的價(jià)格作為下標(biāo)肯定會(huì)各種TLE和MLE,但是美味程度是1000的,所以我們可以把美味程度作為下標(biāo)
f[i][j]表示選取前i個(gè)物品中的若干個(gè),物品的價(jià)值為j時(shí)的最小體積。
f[i][j]=min(f[i-1][j],f[i-1][j-w[i]]+v[i])
然后直接遞推滾動(dòng)一下就行了
relive
題目背景
眾所不周知的是, 酒店之王 xkj 一個(gè)經(jīng)常死去活來的人現(xiàn)在就連 TA 自己都不知道到底該不該醒過來。 也許在黑暗中醒著在光明中睡著未嘗不是一種逃避現(xiàn)實(shí)的方法可是 TA 早已飽受現(xiàn)實(shí)主義的摧殘,也許是是時(shí)候該做一個(gè)了斷了.好吧天亮之后總是潦草一場(chǎng),清醒的人最荒唐清醒歸慶清醒 xkj 知道:有的時(shí)候急急忙忙襪子會(huì)反穿.所以 TA 認(rèn)為一切都應(yīng)該有 序, 畢竟有序才是人間大美嘛但是 xkj 是一個(gè)十分懶惰的人,所以盡管已經(jīng)存在了 c++11 的 STL 提供的強(qiáng)力 sort()了,TA 還是不愿意自己動(dòng)手,所以 TA 十分邪惡把 cdy 也拉上了 TA 的賊船。cdy 還想好好的多活幾年,所以 TA 才不愿意同 xkj 一同搭乘通往天堂的高鐵(除非十分好看的高鐵服務(wù)小姐)。 由于 xkj 使用拼多多購買的高鐵車票是由新興紅牛黨 wzy倒買的所以 cdy 才有逃出來的機(jī)會(huì), 但是 xkj 在車票上又設(shè)下了機(jī)關(guān), 所以 cdy 必須完成挑戰(zhàn)才可以復(fù)活,而挑戰(zhàn)的謎底竟然是 xkj 一直偏愛的有序性
題目描述
挑戰(zhàn)分為三重
第一重 排序
第二重 求逆序?qū)?/p>
第三重 排序最小成本
科普時(shí)間:最小成本排序就是按升序排序排序的代價(jià),譬如說 1,2,3,5,4 排序只需要交換 4,5 即可所以代價(jià)就是(4+5)=9;也就是交換兩個(gè)數(shù)的代價(jià) 再比如說 83,17,8 按照升序排好序就是交換 83 與 8 代價(jià)和為 91
輸入格式
第一行 一個(gè)整數(shù) n 表示序列數(shù)的個(gè)數(shù)
第二行,一個(gè)整數(shù)數(shù)量為 n 的序列
輸出格式
共三行,第一行為按照原數(shù)列排好序之后的數(shù)列第二行為逆序?qū)?shù)第三行為排序最小成本
樣例輸入
5 1 2 3 5 4樣例輸出
1 2 3 4 5 1 9樣例解釋
這還需要解釋????
溫馨提示
這回就木有提示了
數(shù)據(jù)范圍
保證對(duì)于 30%的數(shù)據(jù) n<=10000
保證對(duì)于 100%的數(shù)據(jù) n<=100000
每一個(gè)數(shù)的大小 ni 保證(1<=ni<=10^9)
保證數(shù)列的數(shù)互不重復(fù)
題解
T1+T2:cdq分治。略。
T3:《挑戰(zhàn)程序設(shè)計(jì)競(jìng)賽》(第二版)上的最小成本排序(xkj問我這個(gè)問了好幾遍問我會(huì)不會(huì))
顯然排序后的序列相對(duì)于排序前的序列是一個(gè)置換,對(duì)于置換里的某個(gè)環(huán),我們可以考慮兩種情況,一種是某個(gè)元素繞著這個(gè)環(huán)逆時(shí)針走一圈,直到這個(gè)元素到了他的后繼位置,那么其它元素和它交換也都到了它的后繼位置。顯然我們必須讓這個(gè)元素最小。此時(shí)答案為sum+(n-2)min。第二種情況是請(qǐng)一個(gè)外來元素幫助替換,替換完了再把它攆回去,那么答案為sum+(n+1)nage+min,當(dāng)然那個(gè)元素要取最小的啦,就是排序之后第一小的元素對(duì)于每個(gè)環(huán),這兩個(gè)數(shù)取min。
轉(zhuǎn)載于:https://www.cnblogs.com/oier/p/9816493.html
總結(jié)
以上是生活随笔為你收集整理的10.15 lzxkj的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于如何在Python中使用静态、类或抽
- 下一篇: 智能会议平板与传统投影仪对比哪个更适合现