블루 브리지 컵 Excel 주소 [진수 변환]
문제 설명
Excel 셀의 주소는 열 번호를 알파벳으로 표시하는 흥미로운 것을 나타낸다.예를 들어 A는 1열, B는 2열, Z는 26열, AA는 27열, AB는 28열, BA는 53열을 나타낸다.물론 Excel의 최대 열 번호는 한계가 있기 때문에 전환하는 것은 어렵지 않다.만약 우리가 이런 표현법을 일반화하고 싶다면, 매우 큰 숫자를 매우 긴 자모 서열로 바꿀 수 있습니까?
이 제목은 입력한 숫자에 대응하는 Excel 주소 표시 방식을 출력해야 한다는 것이다.
샘플 입력
26
샘플 출력
Z
샘플 입력
2054
샘플 출력
BZZ
데이터 규모 및 규약
우리는 입력한 정수 범위[12147483647]를 약정한다
문제 풀이 사고방식
이 문제는 사실 10진법에서 26진법으로 바뀌었으니 0이 없으면 26이 된다는 것을 주의해야 한다.나머지 숫자가 0일 때 26 (알파벳 Z) 을 출력하고 1 을 제외하면 됩니다.
AC 코드
#include
using namespace std;
int a[10001];
int main()
{
long long num;
cin >> num;
char o[27];
for(int i=1;i<=26;i++)
o[i] = 'A'+i-1;
int k=0;
while( num!=0) {
if(num%26 == 0) {
a[k++] = 26;
num /= 26;
num --;
}
else {
a[k++] = num%26;
num /= 26;
}
}
k--;
for(int i=k;i>=0;i--)
printf("%c",o[a[i]]);
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Blu-Bridge 컵 -- Excel 주소문제 설명 Excel 셀의 주소는 열 번호를 알파벳으로 표시하는 흥미로운 것을 나타낸다. 예를 들면, A는 첫 번째 열을 나타냅니다. B는 두 번째 열을 나타냅니다. Z는 26열을 나타냅니다. AA는 27열을 나타냅...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.