演算法 華為筆試題 字母和十進位制數對映

2021-09-07 14:34:10 字數 1137 閱讀 6216

題目描述:

使用字母來表示乙個正整數,用小寫字母表示。對映規則很簡單,如下所示:

a 1b 2

z 26

aa 27

ab 28

huawei 104680767

輸入描述:

輸入字母最少1位,最多6位,且字母只能是小寫字母。輸入的十進位制數不超過32位整數最大值。

判斷輸入字串的有效性,若無效輸出error。

輸出描述:

輸入十進位制數,返回字母表示的數。輸入字母表示的數,返回十進位制數。

示例:

輸入:ab輸出:

思路:

主要是乙個26進製和10進製的轉換,26轉10很容易,10轉26涉及到餘數那裡需要考慮一下特殊情況(26 % 26 == 0這裡)。

**:

package

com;

public

class

test2 [0-9]"))

else

}while(inputint != 0);

ret =sb.tostring();

} else

if (input.matches("[a-z]"))

ret = sum + "";

} else

return

ret;

}/*** 字元轉數字a-1

* @param

charactor

* @return

*/public

static

int convertint(char

charactor)

/*** 數字轉字元1-a

* @param

num *

@return

*/public

static

char convertchar(int

num)

public

static

void

main(string args)

}

十進位制和26進製轉換演算法

問題描述 在excel中,列的名稱是這樣乙個遞增序列 a b c z aa ab ac az ba bb bc bz ca zz aaa aab 我們需要將上述列名序列和以下自然數序列相互轉換 1 2 3 問題分析 經過分析,我們不難發現,這是乙個26進製和十進位制相互轉換的問題。序列a z依次對應...

十進位制和26進製轉換演算法

最近在封裝excel元件,需要提供兩個介面,分別根據單元索引和單元名稱訪問單元格。例如,getcell 1,2 和getcell a2 這兩種方法返回的結果是相同的。這裡遇到乙個問題,如何在單元索引 1,2 和單元名稱 a2 之間相互轉換?由於在單元索引和單元名稱中,行號是相同的,所以我們只需要轉換...

藍橋杯 演算法提高 十進位制數轉八進位制數

演算法提高 十進位制數轉八進位制數 時間限制 1.0s 記憶體限制 512.0mb 編寫函式,其功能為把乙個十進位制數轉換為其對應的八進位制數。程式讀入乙個十進位制數,呼叫該函式實現數制轉換後,輸出對應的八進位制數。樣例輸入 9274 樣例輸出 22072 樣例輸入 18樣例輸出 22 思路 遞迴輸...