比赛 |
20120808 |
评测结果 |
WWWWWWWWWW |
题目名称 |
报数 |
最终得分 |
0 |
用户昵称 |
fflyt |
运行时间 |
0.003 s |
代码语言 |
C++ |
内存使用 |
0.31 MiB |
提交时间 |
2012-08-08 11:58:23 |
显示代码纯文本
#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
int main()
{
freopen("readrule.in","r",stdin);
freopen("readrule.out","w",stdout);
char after[251],zf;
char save[251];
cin>>save;
int l;
l=strlen(save);
char ws[11];
ws[2]='S';ws[3]='B';ws[4]='Q';ws[5]='W';
ws[6]='S';ws[7]='B';ws[8]='Q';ws[9]='Y';
int i,j;
int doc=l;
if(save[0]=='-') zf='-';
for(i=0;i<l;i++)
{
if(save[i]=='.')
{
doc=i;
after[i]=save[i];
break;
}
}
int a=0;
if(zf) a++;
for(;;a++)
{
if(save[a]!='0') break;
}
int ll=1;
for(i=doc-1;i>=a;i--)
{
if(save[i]!='0')
after[i]=ws[ll];
ll++;
}
for(i=a;i<doc;i++)
{
if(save[i]=='0')
{
j=i;
for(;;i++)
{
if(save[i]!='0')
{
i--;
break;
}
}
after[j]=i;
}
}
bool flag=0;
for(i=doc+1;i<l;i++)
if(save[i]!='0')
flag=1;
if(!flag) l=doc;
if(zf=='-') cout<<'F';
for(i=a;i<l && i<doc-1;i++)
{
if(save[i]=='0') {cout<<save[i];i=after[i];}
else {cout<<save[i]<<after[i];}
}
if(save[doc-1]!='0') cout<<save[doc-1];
if(l>doc)
{
for(i=doc;i<l;i++)
cout<<save[i];
}
/*for(i=a;i<l;i++)
{
if(save[i]=='.') cout<<save[i];
else if(save[i]=='0'){cout<<save[i];i=after[i];}
else cout<<save[i]<<after[i];
}*/
cout<<endl;
return 0;
}