//今天华为笔试的一道上机题 Excel的列编号 例如:A对应1,Z对应26,AA对应27,AZ对应52 ......随机输入一个字符串求他对于数字,当时想了一个比较复杂的算法,虽然也OJ了,但是总是觉得开辟内存太多,后来发现其实挺简单的。总结:每道题一定要在思路清晰之后在动手敲代码,可以借助纸笔等工具来清晰你的思路,否则花很多时间。而且算法的复杂度也不高。
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
string s;
int main()
{
while(cin>>s)
{
int sum=0;
for(int i=s.size(); i>0; i--)
{
sum+=pow(26,(i-1))*int(s[s.size()-i]-'a'+1);
}
cout<<sum<<endl;
}
return 0;
}