国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Leetcode 168. Excel Sheet Column Title

2019-11-11 03:01:52
字體:
來源:轉載
供稿:網友

Given a positive integer, return its corresponding column title as appear in an Excel sheet.

For example:

1 -> A2 -> B3 -> C...26 -> Z27 -> AA28 -> AB

s思路: 1. 把10進制轉換26進制。 2. 這種一一映射,找出背后的數學公式(n-1)%26+’A’。因為:n%26,當n=26,余數就是0,而0是沒定義的,所以先減1,然后去余數,再加1,就妥了! 3. 有時候,發現判斷太多,導致沒有美感,讓人厭煩,一般是自己打開的方式不對,這里的啟發是:把這些多余的if-else**壓縮**成一個簡潔完美的數學公式即可!果然,數學才是王道,一切現象從數學里出,數學是一切現象之母呀! 4. 由于對26取余的輸出是[0,25],而我們希望的結果是[1,26],因此值域差1.那就先減1,運算后在[0,25]內,然后加1,就得到[1,26]結果。我以前就認為這是一個trick,沒認識到這背后數學的應用可以起到簡化代碼,讓程序有美感!

//羅嗦的做法:不推薦class Solution {public: string convertToTitle(int n) { // string res; string table="0ABCDEFGHIJKLMNOPQRSTUVWXYZ"; while(n){ if(n%26){//bug res=table[n%26]+res; n/=26; } else{ res=table[26]+res; n=n/26-1; } } return res; }};//優化:不用列舉所有格式,直接計算+'A'即可。//用數學代替判斷,推薦!!!class Solution {public: string convertToTitle(int n) { // string res; while(n){ res=char((n-1)%26+'A')+res; n=(n-1)/26; } return res; }};
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 井研县| 金秀| 祁门县| 徐汇区| 侯马市| 屏南县| 平泉县| 碌曲县| 桦川县| 吉木乃县| 南岸区| 马公市| 曲阳县| 昌平区| 崇明县| 安国市| 志丹县| 柏乡县| 呼玛县| 延安市| 忻州市| 英超| 伊川县| 黔江区| 邵武市| 六盘水市| 仪陇县| 同德县| 四会市| 张北县| 深水埗区| 长垣县| 广宗县| 兴文县| 江源县| 扶风县| 曲周县| 许昌市| 阜平县| 巴里| 都江堰市|