問題描述
excel單元格的位址表示很有趣,它使用字母來表示列號。
比如,a表示第1列,
b表示第2列,
z表示第26列,
aa表示第27列,
ab表示第28列,
ba表示第53列,
....
當然excel的最大列號是有限度的,所以轉換起來不難。
如果我們想把這種表示法一般化,可以把很大的數字轉換為很長的字母序列呢?
本題目即是要求對輸入的數字, 輸出其對應的excel位址表示方式。
樣例輸入
26
樣例輸出
z
樣例輸入
2054
樣例輸出
bzz
資料規模和約定
我們約定,輸入的整數範圍[1,2147483647]
峰值記憶體消耗(含虛擬機器) < 256m
cpu消耗 < 1000ms
請嚴格按要求輸出,不要畫蛇添足地列印類似:「請您輸入...」 的多餘內容。
注意:main函式需要返回0;
只使用ansi c/ansi c++ 標準;
不要呼叫依賴於編譯環境或作業系統的特殊函式。
所有依賴的函式必須明確地在原始檔中 #include
不能通過工程設定而省略常用標頭檔案。
提交程式時,注意選擇所期望的語言型別和編譯器型別。
------------------------------
笨笨有話說:
這有點像進製關係,又不完全是。好像末2位是以1當26,末3位是以1當26*26
歪歪有話說:
要是從字母序列轉數字還好點,倒過來有點麻煩,不過計算機跑得快啊。
#include#include#include#includeusing namespace std;
int main()
while (!s.empty())
cout
}
藍橋杯訓練 歷屆試題 Excel位址
問題描述 excel單元格的位址表示很有趣,它使用字母來表示列號。比如,a表示第1列,b表示第2列,z表示第26列,aa表示第27列,ab表示第28列,ba表示第53列,當然excel的最大列號是有限度的,所以轉換起來不難。如果我們想把這種表示法一般化,可以把很大的數字轉換為很長的字母序列呢?本題目...
藍橋杯 歷屆試題 Excel位址
excel單元格的位址表示很有趣,它使用字母來表示列號。比如,a表示第1列,b表示第2列,z表示第26列,aa表示第27列,ab表示第28列,ba表示第53列,當然excel的最大列號是有限度的,所以轉換起來不難。如果我們想把這種表示法一般化,可以把很大的數字轉換為很長的字母序列呢?本題目即是要求對...
藍橋杯試題 歷屆試題 郵局
題中的資料量很小,但單純的回溯會超時,所以需要剪枝,這裡減了三個枝。1.當即使所有剩餘點都算上都不能取k個點時。2.當當前點大於k個時。3.當發現加入乙個點後距離陣列沒有變化時,說明這個點可有可無以後不再計算。include include include include using namespa...