Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++의 Excel 시트 열 제목


양의 정수가 있다고 가정합니다. Excel 시트에 나타나는 해당 열 제목을 찾아야 합니다. 따라서 [1 :A], [2 :B], [26 :Z], [27 :AA], [28 :AB] 등

따라서 입력이 28과 같으면 출력은 AB가 됩니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • n이 0이 아닌 동안 수행 -

    • n :=n - 1

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

    • n :=n / 26

  • 배열 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