本文主要是介绍Algorithm学习笔记 --- 487-3279,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
首先声明,此代码没有通过poj,只是供大家研究分享,希望也能帮我找出缺点。
直接上代码,我的主要思想是用哈希映射,然后转换每个字符,考虑分为小写,大写,数字
代码如下:
#include <iostream>
#include<algorithm>
#include<iterator>
#define N 100010
using namespace std;
int hash[26]={2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,7,8,8,8,9,9,9,9};
int a[N];
int main()
{
int n,sum=0,cnt=0;
string tmp;
cin >> n ;
while(n--)
{
cin >> tmp;
int t = 0 ;
for(unsigned i=0;i<tmp.size();++i)
if(tmp[i]>='A'&&tmp[i]<='Z')
t = t*10+hash[tmp[i]-65];
else if(tmp[i]>='0'&&tmp[i]<='9')
t = t*10+tmp[i]-48;
a[cnt++] &
这篇关于Algorithm学习笔记 --- 487-3279的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!