Monday 4 May 2009

POJ 1565


#include <iostream>
#include <string.h>
using namespace std;
typedef unsigned int uint;
uint de(char* x){
uint n=1,r=0;
char *p;
for(p=x;*p;++p);
for(--p;p>=x;--p)r+=((n<<=1)-1)*(*p-'0');
return r;
}
int main(){
for(char x[1024];cin>>x;cout<<de(x)<<endl)
if(!strcmp(x,"0"))break;
return 0;
}

No comments:

Post a Comment