주제 설명 :
양의 정수 감안할 때, 그것은 열 이름에 대응하는 엑셀 테이블을 반환
예를 들면 :
1 :
2 : B
28 : AB
701 : ZY
문제 해결 아이디어 :
leetcode에 표시된이 질문은 간단하다, 그래서, 그것은 청동라고 생각 나는 왕 기대하지 않았다 마쳤다. 아침에 머리가 매듭, 또는 이해 생각된다 공부했다. 사람들의 설명 정오 수면 여전히 궁금 다른 하나는, 마침내 7788 이해를 참조하십시오. 나는 이상 이동 (어떤 형이 큰 소리로 카자흐스탄을 말하는 침해 이동) 자신의 이해에 대해 이야기하는 코드를 넣어
AC 코드 :
공용 문자열 convertToTitle1 ( INT의 N) { 문자열 온도 = "" ; 동안 (N> 0 ) { 문자 S = ( 숯 ) ( (N-1) % 26 + 'A' ); 임시 = S +의 온도; N = (N-1) / 26 ; } 반환 온도; }
처음에 나는 그것이 26 개 질문의 간단한 이진 소수점 변환, 그리고 벽을 만진 후 다음 여러 번 일이 그렇게 간단하지 않습니다 찾을 생각했다.
코드는 두 개의 N-1로 표시합니다.
상기 문자 A ~ Z에 대응하는 제 N-1, 1 내지 26 진수 봐되도록 때 기준점 번호 N = 1 ~도 26A ~ Z 0-25에 추가 할 때 변경된 그러므로 다시 진수의 모듈 기반을 줄여야합니다. 하지만 기록 할 수없는 문자들 = (숯) (N의 26 % + 'A'-1)와 같은, n은 26로 나누어 쓰기로의 "Z 것'이 계산된다 ' A'-1 = '@'.
두 번째 N-1에 관해서는, 나는 당신이 차이 엑셀 순서와 소수를 발견하지 않았습니다 모른다. 소수 비트는 1보다 10 이하의 전체 수행, 즉 10 (1) (10)에 의해 표시되는 전체 비트 9을 말할 것이다. 그리고 엑셀 수있는이 순서가 가득하고 27 비트에 여기, Z도 매우 잘 손실 26를 나타냅니다, AZ는, A가 26 나타내는 표시하지만, 비트에 26를 나타냅니다. 대부분 전에 하나를 입력하기 위해서, (26)의 단부에서만 26 소모되었으므로 따라서, 예를 들어, 26의 배수를 방지하기 위해, 52 BZ가된다. 따라서, 제 N-1이 발생하지 않도록하는 것이다.
사실, 최종 분석에서,이 질문에 팬 이유는 그것이 우리의 생각의 관성을 충족하지 않는다는 것입니다 생각합니다. (대신 진수 26의) 우리는, 바이너리, 16 진수 진수, 그래서 각각 0이며,이 순서는 엑셀 0 만 1-26 존재하지 않는, 그리고 27이 가득 하나의 기대.