一個 C++ 程式,用於根據電子表格中的列號找出電子表格列標題


假設我們有一個正整數,我們需要找出其在電子表格中顯示的對應列標題。例如 [1 : A], [2 : B], [26 : Z], [27 : AA], [28 : AB] 等。

因此,如果輸入是 29,則輸出將是 AC。

要解決此問題,我們將遵循以下步驟:

  • 當 n 不為零時,執行以下操作:

    • n := n − 1

    • res := res + n mod 26 + 'A' 的 ASCII

    • n := n / 26

  • 反轉陣列 res

  • 返回 res

讓我們看看以下實現,以獲得更好的理解:

例子

 線上演示

#include <bits/stdc++.h>
using namespace std;
class Solution {
   public:
   string convertToTitle(int n) {
      string res;
      while(n){
         res += (−−n)%26 + 'A';
         n /= 26;
      }
      reverse(res.begin(), res.end());
      return res;
   }
};
main(){
   Solution ob;
   cout << (ob.convertToTitle(30));
}

輸入

30

輸出

AD

更新於:21-10-2020

194 個瀏覽

開始你的 職業生涯

完成課程並獲得證書

開始
廣告
© . All rights reserved.