leetcode_168题——Excel Sheet Column Title(数学问题)

Excel Sheet Column Title

Total Accepted: 25652 Total Submissions: 142582My Submissions

Question Solution

Given a positive integer, return its corresponding column title as appear in an Excel sheet.

For example:

    1 -> A
    2 -> B
    3 -> C
    ...
    26 -> Z
    27 -> AA
    28 -> AB 

Credits:
Special thanks to @ifanchu for adding this problem and creating all test cases.

Hide Tags

Math

这道题其实就是将10进制转化为26进制的计算,只是从1开始,而不是从零开始,所以有点搞人,开始的时候想了个笨办法,发现超时了

后来看了下别人的解法

#include<iostream>
#include<string>
#include<math.h>
using namespace std;
/*
string convertToTitle(int n) {
	string str1;
	int i=0;
	int a=n;
	while(1)
	{
		int pinf_i=pow(26.0,i);
		int pinf_ii=pow(26.0,i+1);
		int b;
		if(a<=pinf_ii)
		{b=a/pinf_i;str1.push_back(b+64);break;}

		if(a>pinf_ii)
		{
			if(a%pinf_ii==0)
			{
				str1.push_back(‘Z‘);
				a=a-26*pinf_i;
			}
			else
			{
				b=(a%pinf_ii)/pinf_i;
				str1.push_back(b+64);
				a=a-b*pinf_i;
			}
			i++;
		}
	}
	string str2;
	int N=str1.size();
	while(N--)
	{
		str2.push_back(str1.back());
		str1.pop_back();
	}
	return str2;
}
*/
string convertToTitle(int n)
{
	string str1;

	while(n!=0)
	{
		n--;
		str1.push_back(n%26+65);
		n/=26;
	}
	string str2;
	int N=str1.size();
	while(N--)
	{
		str2.push_back(str1.back());
		str1.pop_back();
	}
	return str2;
}

int main()
{
	cout<<convertToTitle(703)<<endl;
}

  

时间: 2024-10-20 13:36:21

leetcode_168题——Excel Sheet Column Title(数学问题)的相关文章

leetcode第168题-Excel Sheet Column Title

本题目与前面的把序列字母转换为数字的题目正好相反,是把数字转化为对应的序列字母.首先是步骤:根据逐步求商先确定字母有多少个,再动态申请空间避免内存浪费*(s+size-i)就对应于s[size-i],从后往前逐步的给每个字母赋值即可. #include<stdio.h> #include<string.h> #include<stdlib.h> char *convertToTitle(int n) { char *s; int fac=26,size=0,num=n,

168.Excel Sheet Column Title

Excel Sheet Column Title Given a positive integer, return its corresponding column title as appear in an Excel sheet. For example 1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB 注意:由于下标从1开始而不是从0开始,因此要减一操作. static public string Convert

2016.5.19——Excel Sheet Column Title

Excel Sheet Column Title 本题收获: 1.由int型转换为整型(string),如何转化, res = 'A'+(n-1)%26和之前由A-z转化为十进制相反,res = s[i]-'A'+1.(为什么有+1,-1还有点迷糊,貌似是十进制是0-9,26进制是) 2.十进制到26进制转化 题目: Given a positive integer, return its corresponding column title as appear in an Excel shee

Excel Sheet Column Number &amp; Excel Sheet Column Title

1. Excel Sheet Column Number Related to question Excel Sheet Column Title Given a column title as appear in an Excel sheet, return its corresponding column number. For example: A -> 1 B -> 2 C -> 3 ... Z -> 26 AA -> 27 AB -> 28 1 class S

leetcode Excel Sheet Column Title python

Excel Sheet Column Title Given a positive integer, return its corresponding column title as appear in an Excel sheet. For example: 1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB python code class Solution: # @param {integer} n # @ret

[leetcode] Excel Sheet Column Title &amp; Excel Sheet Column Number

Excel Sheet Column Title Given a positive integer, return its corresponding column title as appear in an Excel sheet. For example: 1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB 思路: 10进制转26进制 .先求低位再求高位,与10进制转2进制一样. 题解: class Solution

LeetCode168——Excel Sheet Column Title

LeetCode168--Excel Sheet Column Title 题目 Given a positive integer, return its corresponding column title as appear in an Excel sheet. For example: 1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB Credits: Special thanks to @ifanchu for

[LeetCode] Excel Sheet Column Title 求Excel表列名称

Given a positive integer, return its corresponding column title as appear in an Excel sheet. For example: 1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB Credits:Special thanks to @ifanchu for adding this problem and creating all test

[LeetCode]62. Excel Sheet Column Title Excel列序号

Given a positive integer, return its corresponding column title as appear in an Excel sheet. For example: 1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB Credits:Special thanks to @ifanchu for adding this problem and creating all test