我的第一个算法题

TopCoder的一个算法题: HowEasy。

对C++的标准库不熟悉,居然一个系统函数也没用....

75.01分



#include <string>

using namespace std;

class HowEasy

{

public:

int pointVal(string param0)

{
int i=0, wordNum=0, tolLeng=0, st=0, wordLeng=0;
for(;param0[i-1]!='\0'|| param0[i]!='\0';i++)
{
if(wordLeng==0 && !(  (  (param0[i]>='a') && (param0[i]<='z')   )||  ((param0[i]>='A') && (param0[i]<='Z') ) || param0[i]==' ' )) //Determin if the word is not start from a alpha word
{
st=1;
}
    else if(!st && (  (  (param0[i]>='a') && (param0[i]<='z')   )||(  (param0[i]>='A') && (param0[i]<='Z')   )  )  )//Determin whether current charater is part of word
{
++wordLeng;
++tolLeng;
}


else if((  param0[i]==0 ||   (param0[i]=='.'&&(param0[i+1]==' ' ||param0[i+1]=='\0')) ||  param0[i]==' ' )     ) //Determin if its the end of Token
{
if(!st && wordLeng!=0) //Determin if its the end of word
{
wordLeng=0;
wordNum++;
}
st=0;
}
   
}


if(wordNum == 0)
{
return(0);
}
if (tolLeng/wordNum <4)
{
return (250);
}
if (tolLeng/wordNum <6)
{
return(500);
}
return (1000);

}

};

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值