본문 바로가기
Leetcode

168. Excel Sheet Column Title

by Doromi 2023. 11. 6.
728x90
반응형
엑셀 시트의 열 번호를 해당 열의 알파벳 표기로 변환하는 문제입니다.

문제 설명:

엑셀 시트의 열 번호는 1부터 시작하며, 각 열은 "A", "B", "C", ..., "Z", "AA", "AB", "AC", ... 순서로 표현됩니다. 여기서 "A"는 1번 열, "B"는 2번 열, "Z"는 26번 열, "AA"는 27번 열, "AB"는 28번 열을 나타냅니다.

주어진 숫자 n에 해당하는 열 번호를 알파벳 표기로 변환하여 반환하세요.

예를 들어, n이 1인 경우, 반환값은 "A"입니다. n이 28인 경우, 반환값은 "AB"입니다.

이 문제를 해결하기 위해서는 10진수를 26진수로 변환하는 것과 유사한 방법을 사용합니다. 
public string ConvertToTitle(int n) {
       StringBuilder sb = new StringBuilder();
       while(n>0){
           n--;
           sb.Insert(0,(char)('A'+n%26));
           n/=26;
       }
       return sb.ToString();
    }

 

 

StringBuilder.Insert 메서드는 StringBuilder 클래스에서 제공되며, 문자열을 지정된 위치에 삽입하는 데 사용됩니다. StringBuilder는 가변 문자열을 다룰 때 사용되며, 문자열을 동적으로 조작할 수 있도록 효율적인 방법을 제공합니다.


StringBuilder.Insert 메서드의 구문은 다음과 같습니다:
public StringBuilder Insert(int index, string value);
index: 문자열을 삽입할 위치를 나타내는 정수 값입니다.
value: 삽입할 문자열입니다.
예를 들어, 다음과 같이 StringBuilder를 사용하여 문자열을 조작할 수 있습니다:
StringBuilder sb = new StringBuilder("Hello, World!");

// 문자열의 7번째 위치(index 7)에 "C#"을 삽입
sb.Insert(7, "C#"); // 결과: "Hello, C#, World!"
"Hello, World!" 문자열의 7번째 위치(index 7)에 "C#"을 삽입하여 문자열을 변경했습니다. 이렇게 StringBuilder.Insert를 사용하면 문자열을 효율적으로 조작할 수 있습니다.
728x90
반응형

'Leetcode' 카테고리의 다른 글

349. Intersection of Two Arrays  (0) 2023.11.07
242. Valid Anagram  (0) 2023.11.07
145. Binary Tree Postorder Traversal  (0) 2023.11.05
141. Linked List Cycle  (0) 2023.11.05
110. Balanced Binary Tree  (0) 2023.11.04