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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

信息学奥赛一本通 2004:【20CSPJ普及组】优秀的拆分 | 洛谷 P7071 [CSP-J2020] 优秀的拆分

發(fā)布時(shí)間:2025/3/17 编程问答 10 豆豆
生活随笔 收集整理的這篇文章主要介紹了 信息学奥赛一本通 2004:【20CSPJ普及组】优秀的拆分 | 洛谷 P7071 [CSP-J2020] 优秀的拆分 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

【題目鏈接】

ybt 2004:【20CSPJ普及組】?jī)?yōu)秀的拆分
洛谷 P7071 [CSP-J2020] 優(yōu)秀的拆分

【題目考點(diǎn)】

  • 數(shù)制
    • 基數(shù):即進(jìn)制數(shù)。十進(jìn)制的基數(shù)是10,二進(jìn)制的基數(shù)是2。
    • 按位權(quán)展開:
      例:1234=1?103+2?102+3?101+4?1001234 = 1*10^3+2*10^2+3*10^1+4*10^01234=1?103+2?102+3?101+4?100
    • 十進(jìn)制轉(zhuǎn)二進(jìn)制方法:除基取余
      10 / 2 = 5 … 0
      5 / 2 = 2 … 1
      2 / 2 = 1 … 0
      1 / 2 = 0 … 1
      先得到的余數(shù)是低位,后得到的是高位。從下向上取數(shù)字,得到10對(duì)應(yīng)的的二進(jìn)制數(shù)字為1010

【解題思路】

  • 題目中的拆分,即為數(shù)字在二進(jìn)制下的按位權(quán)展開式。
    例:10=23+21=1?23+0?22+1?21+0?2010 = 2^3 + 2^1 = 1*2^3+0*2^2+1*2^1+0*2^010=23+21=1?23+0?22+1?21+0?20 ,提取每項(xiàng)前面的系數(shù),就可以得到10的二進(jìn)制表示為1010。

  • 題目要求拆分后的各個(gè)數(shù)字必須是2的正整數(shù)次冪,也就是說202^020111不符合要求,奇數(shù)在按位權(quán)展開后必然會(huì)得到一項(xiàng)202^020,因此奇數(shù)沒有優(yōu)秀的拆分。

  • 可以通過除基取余的方法得到這個(gè)二進(jìn)制數(shù)字,將其記錄在一個(gè)數(shù)字?jǐn)?shù)組中。再?gòu)母呶幌虻臀槐闅v這個(gè)數(shù)字?jǐn)?shù)組,如果數(shù)組某元素為1,那么輸出該位置對(duì)應(yīng)的位權(quán)。
    例:10通過除基取余得到的二進(jìn)制數(shù)字存在數(shù)組中,為
    數(shù)組元素:0 1 0 1
    數(shù)組下標(biāo):0 1 2 3
    倒序遍歷數(shù)組,如果下標(biāo)為i的元素為1,那么輸出2i2^i2i

  • 【注意 :輸出樣式】pow函數(shù)返回浮點(diǎn)型,如數(shù)字很長(zhǎng),用cout或printf("%g")輸出時(shí),會(huì)以科學(xué)計(jì)數(shù)法的形式輸出,那樣不符合題目要求。應(yīng)該將pow()函數(shù)的返回值轉(zhuǎn)為整型后再輸出。

【題解代碼】

解法1:

#include<bits/stdc++.h> using namespace std; int main() {int n, num, r[100], ri = 0;//r:數(shù)字?jǐn)?shù)組 ri:數(shù)組填充用下標(biāo) cin >> n;if(n % 2 == 1)cout<<-1;else{for(int a = n; a > 0; a /= 2)//除基取余 r[ri++] = a % 2;for(int i = ri - 1; i >= 0; i--)//倒序遍歷數(shù)組 {if(r[i] == 1)cout << int(pow(2, i)) << ' ';//輸出2^i,要以整型輸出,pow返回浮點(diǎn)型,浮點(diǎn)型在很長(zhǎng)時(shí)輸出樣式可能變?yōu)榭茖W(xué)計(jì)數(shù)法 }}return 0; }

解法2:

用num記錄當(dāng)前位權(quán),如果當(dāng)前位權(quán)系數(shù)為1,那么用數(shù)組r記錄,位權(quán),最后倒序輸出數(shù)組r。

#include<bits/stdc++.h> using namespace std; int main() {int n, a, wei, r[100], ri = 0;cin>>n;if(n % 2 == 1)cout << -1;else{//wei為位權(quán),初值1,每次循環(huán)乘2,值為1,2,4,8。。。 for(a = n, wei = 1; a > 0; a /= 2, wei *= 2){if(a % 2 == 1)//如果位權(quán)前系數(shù)為1 r[ri++] = wei;//記錄該位權(quán) }for(int i = ri - 1; i >= 0; --i)//倒序遍歷輸出 cout<<r[i]<<' ';}return 0; } 新人創(chuàng)作打卡挑戰(zhàn)賽發(fā)博客就能抽獎(jiǎng)!定制產(chǎn)品紅包拿不停!

總結(jié)

以上是生活随笔為你收集整理的信息学奥赛一本通 2004:【20CSPJ普及组】优秀的拆分 | 洛谷 P7071 [CSP-J2020] 优秀的拆分的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 欧美综合视频在线观看 | 久色91| 日本伦理片在线看 | 亚洲性生活视频 | 少妇丰满尤物大尺度写真 | 欧美美女一区二区 | 欧美福利在线视频 | 美日韩一区二区 | 欧美亚洲综合久久 | 成人久久久久久 | 波多野结衣一区二区三区免费视频 | 国产成人高清在线 | 国产精品一级二级三级 | 免费看国产黄色 | 四虎影院在线视频 | 黄色片aaa| 日韩欧美在线视频免费观看 | 国产九九久久 | 蜜臀人妻四季av一区二区不卡 | 老头把女人躁得呻吟 | 一卡二卡久久 | 老头吃奶性行交 | 97人人澡 | 国产 欧美 自拍 | 亚洲熟女乱色综合亚洲小说 | 国产精品久久精品 | jizz毛片 | 成人黄色激情网 | 国产毛片一区二区 | 狠狠躁夜夜躁av无码中文幕 | 国产不卡一区 | 特级毛片www | 成人影片在线 | 无码aⅴ精品一区二区三区浪潮 | 男人插入女人下面的视频 | 成人黄色片在线观看 | 日韩精品在线视频 | 制服丝袜在线第一页 | 国产精品成熟老女人 | 国产精品羞羞答答在线观看 | 日韩免费影院 | 亚洲一区视频网站 | 亚洲啊啊啊啊啊 | 久久人爽 | 视频精品一区 | 神马午夜国产 | 诱惑av| 午夜天堂av | 男插女av | 97色涩| 制服 丝袜 激情 欧洲 亚洲 | 成年人免费网站在线观看 | 91精品久久久久久久久久 | 毛片大片| 精品熟妇无码av免费久久 | 穿扒开跪着折磨屁股视频 | 密臀av| 好男人在线视频www 亚洲福利国产 | 中国老太婆性做爰 | 中国美女一级黄色片 | 国产在线麻豆精品观看 | www免费网站在线观看 | av网站大全在线观看 | 少妇激情视频 | 国产1区2区3区 | 久久久久麻豆v国产精华液好用吗 | 精品在线免费视频 | 国产精品日韩无码 | 在线99视频 | 僵尸艳谈 | 红桃视频成人在线 | 欧美大胆a| 亚洲精品国产精品国自 | 亚洲一区二区三区乱码 | 一区二区不卡在线观看 | 久久影视网 | 午夜影院男女 | 骚虎av在线 | 肉嫁高柳家在线看 | 日本午夜视频 | 亚洲少妇在线 | 奇米色综合| 超碰97国产| 蜜桃成熟时李丽珍国语 | 男生草女生视频 | 黄色自拍网站 | 亚洲av综合色区无码一二三区 | 亚洲av无码电影在线播放 | www.激情网 | 污污视频网站在线免费观看 | 欧美理论在线观看 | 欧美精品国产一区二区 | a极黄色片| 国产精品美女www爽爽爽视频 | 国产精品jizz在线观看美国 | 欧美7777| 三级三级久久三级久久18 | 免费在线播放视频 | 潮喷失禁大喷水无码 |