ALGO-85演算法訓練 進位制轉換
演算法訓練 進位制轉換
時間限制:1.0s 記憶體限制:512.0MB
問題描述
編寫一個程式,輸入一個二進位制的字串(長度不超過32),然後計算出相應的十進位制整數,並把它打印出來。
輸入格式:輸入為一個字串,每個字元都是’0’或’1’,字串的長度不超過32。
輸出格式:輸出一個整數。
輸入輸出樣例
樣例輸入
1101
樣例輸出
13
#include <iostream> #include <string> using namespace std; int main(int argc, char** argv) { string s; cin>>s; long long sum=0; int len=s.length(); for(int i=0;i<len;i++) sum=sum*2+s[i]-'0'; cout<<sum<<endl; return 0; }
相關推薦
ALGO-85演算法訓練 進位制轉換
演算法訓練 進位制轉換 時間限制:1.0s 記憶體限制:512.0MB 問題描述 編寫一個程式,輸入一個二進位制的字串(長度不超過32),然後計算出相應的十進位制整數,並把它打印出來。
演算法筆記 — 進位制轉換(大數運算-十進位制轉二進位制)
題目連結:http://www.codeup.cn/problem.php?cid=100000579&pid=2 題目描述 將一個長度最多為30位數字的十進位制非負整數轉換為二進位制數輸出。 輸入 多組資料,每行為一個長度不超過30位的十進位制非負整數
演算法提高 進位制轉換
問題描述 程式提示使用者輸入三個字元,每個字元取值範圍是0-9,A-F。然後程式會把這三個字元轉化為相應的十六進位制整數,並分別以十六進位制,十進位制,八進位制輸出。 輸入格式:輸入只有一行,
常用演算法 [進位制轉換+最小正整數+樹的非遞迴演算法]
常用演算法 [進位制轉換+最小正整數+樹的非遞迴演算法] 問題一 :8和10進位制轉換 public class Main { public static void main(String[] args) { //Scanner scanner = ne
【演算法】1090: 十六進位制轉換
這個題目實現起來不是很難,因為一位16進位制數可以用4位二進位制數來表示,一位8進位制數可以用3位二進位制數來表示,這樣通過二進位制數便在16進位制數和8進位制數之間架起了橋樑。 這裡我直接採用C++中的string類來寫,方便快捷,可行性高,但有些地方需要注意,有
資料結構與演算法 -- 棧的應用(進位制轉換、括號匹配)
棧的應用 ps:用棧很簡單實現的應用有很多,比如說進位制轉換,括號匹配等。學計算機的都知道,2進位制,8進位制,10進位制,16進位制等,進位制之間的轉換也是需要掌握的,以備不時之需,所以我們可以自己寫一段程式如果會android的話,可以直接打包成APK。下面就按照這兩個應用稍微寫一點C語言的程式碼。 進
中石油新生第三次訓練賽 C題進位制轉換(奇葩解)
題目描述 樂樂正在學進位制轉換,但他老是搞不清楚到底自己是否做對,請你編一程式實現兩種不同進位制之間的資料轉換,幫他檢驗。 輸入 共有三行,第一行是一個正整數,表示需要轉換的數的進位制n(2≤n≤16),第二行是一個n進位制數,若n>10則用大寫字母A~F表示數碼10~15
藍橋杯演算法題庫 進位制轉換_16轉10進位制
藍橋杯演算法題庫 16轉10進位制 題目 解題思路 題目 問題描述 *問題描述 從鍵盤輸入一個不超過8位的正的十六進位制數字符串,將它轉換為正的十進位制數後輸出。 *注:十六進位制數中的10~15分別用大寫的英文字母
藍橋杯演算法題庫 進位制轉換_十進位制轉16進位制
藍橋杯演算法題庫 十進位制轉16進位制 題目 解題思路 題目 問題描述 十六進位制數是在程式設計時經常要使用到的一種整數的表示方式。 它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16個符號,分別表
m進位制轉換為n進位制-任意進位制轉換演算法
轉自:http://www.cnblogs.com/pkuoliver/archive/2010/10/27/Convert-m-number-to-n-number.html園子裡有很多深藏不漏的高手,在這裡聊這種基本問題是有點小兒科。不過本人只是想分享下自己的新的,程式碼,演算法有不足之處,還請大家指正,
進位制轉換演算法
用字母來表示不同的進位制,B(Binary)表示二進位制,O(Octal)表示八進位制,D(Decimal)或不加表示十進位制,H(Hexadecimal)表示十六進位制。 一、其它進位制轉十進位制 二進位制轉十進位制 方法: 將二進位制數從低位到高位計算(右邊為低位),
二進位制、十進位制、十六進位制轉換的演算法
這個演算法不難,並且也有好多種演算法的實現,今天看到一個百度知道上說的自己實現了一下,以供參考 思考:十進位制數num,num % 2得到的數存放在陣列list中,並且num = num / 2直到num = 0 ,得到的陣列倒序輸出就是我們所要得到的二進位制數了 程式
Python實現十進位制向2,8,16等進位制轉換演算法
from pythonds.basic.stack import Stack def divideBy2(decNumber, base): digits = "0123456789ABCDEF"
牛客網三道程式設計題(五) 之華為機試線上訓練(四)進位制轉換、刪除重複出現的數字、句子逆序
1、進位制轉換 這一題利用 cout 的流輸出,非常簡單。不需要再根據下標啥的,再乘以16 或者除以16啥的。請注意: 1)利用 cout 流輸出的,都是字串,不管它是不是數字。 2)cout 預設輸出的是十進位制。此外,如果是八進位制,
短網址演算法——之 10進位制與62進位制轉換
看了網上的短網址演算法,表示很有意思,其中最中意的還是永遠不重複的短網址演算法。 步驟: 1,準備一個被打亂的陣列,存放A-Za-Z0-9這62個字元 2.預先產生一個網址ID,將這個ID通過 _10_to_62 解析轉換成62進位制的短網址符。 3.儲存
考研資料結構與演算法之堆疊的使用(二)利用堆疊實現進位制轉換
將十進位制的數字轉換成各種不同的進位制,這裡以八進位制為例,其實就是不斷的除以八然後取餘數,雖然用陣列也不難實現,但是顯然棧的後進先出的特性使得更容易理解了,具體實現方法如下: int main(void) { SqStack S; InitStack(S);
進位制轉換演算法(轉)
建議讀者閱讀原文,確保獲得完整的資訊。一.本文所涉及的內容(Contents)二.背景(Contexts) 之前使用SQL把十進位制的整數轉換為三十六進位制,SQL程式碼請參考:SQL Server 進位制轉換函式,其實它是基於二、八、十、十六進位制轉換的計算公式的,進位制
Python內建進位制轉換函式(實現16進位制和ASCII轉換)
在進行wireshark抓包時你會發現底端視窗報文內容左邊是十六進位制數字,右邊是每兩個十六進位制轉換的ASCII字元,這裡使用Python程式碼實現一個十六進位制和ASCII的轉換方法。 hex() 轉換一個整數物件為十六進位制的字串 >>> hex(16) '0x10' >&
[程式設計題]進位制轉換
寫出一個程式,接受一個十六進位制的數值字串,輸出該數值的十進位制字串。(多組同時輸入 ) 輸入描述: 輸入一個十六進位制的數值字串。 輸出描述: 輸出該數值的十進位制字串。 輸入例子: 0xA 輸出例子: 10 package HWResear
負進位制轉換
題目描述 以前我們做的進位制轉換大家都忽略了一點,就是進位制一定是正整數;今天這道進位制轉換就坑爹的選擇了,額,負整數來做進位制。 輸入 輸入由若干行組成,每行有兩個整數n(-32765<=n<=32767)和R(-16<=R<=-2)。輸入的最