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

C++의 열 번호에서 스프레드시트 열 제목을 찾는 프로그램

<시간/>

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

따라서 입력이 29와 같으면 출력은 AC가 됩니다.

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

  • 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