【小米校招笔试】在Excel中,列的名称是这样一个递增序列:seq={A、B、C、... Z、AA、AB、AC、... AZ、BA、BB、BC、... BZ、CA、... ZZ、AAA、AAB...
生活随笔
收集整理的這篇文章主要介紹了
【小米校招笔试】在Excel中,列的名称是这样一个递增序列:seq={A、B、C、... Z、AA、AB、AC、... AZ、BA、BB、BC、... BZ、CA、... ZZ、AAA、AAB...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2016年小米校招筆試第一題(成都站)
1 在Excel中,列的名稱是這樣一個遞增序列:seq={A、B、C、... ?Z、AA、AB、AC、... AZ、BA、BB、BC、... BZ、CA、... ZZ、AAA、AAB...}。求給出任意一個自然數n,求這個序列中第n個字符串。函數聲明:String getColumnLable(int n)
參考解法(Java版): package XiaoMi;public class test16 {/************************************** @param args* 算法思想:分別求每一位的字符,從后向前求************************************/public static void main(String[] args) {// TODO Auto-generated method stubtest16 t = new test16();System.out.println(t.getColumnLable(675556));}String getColumnLable(int n) {String tmp = "";// 按位找int count = 1;while (((int) (n / Math.pow(26, count-1)) > 0)) {int w3 = ((int) (n % Math.pow(26, count)) / (int) Math.pow(26, count - 1));char c = (char) (w3 + 65);tmp = c + tmp;count++;}return tmp;} } 運行結果: BMLIY與50位技術專家面對面20年技術見證,附贈技術全景圖
總結
以上是生活随笔為你收集整理的【小米校招笔试】在Excel中,列的名称是这样一个递增序列:seq={A、B、C、... Z、AA、AB、AC、... AZ、BA、BB、BC、... BZ、CA、... ZZ、AAA、AAB...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IT从业者必备的十五种能力
- 下一篇: 程序员装逼指南