Source Code
Problem: 1654 User: billforum
Memory: 948K Time: 32MS
Language: C++ Result: Accepted
Source Code
#include <iostream>
#include <memory.h>
#include <stdlib.h>
#include <cstdio>
#include <cstring>
#include <cmath>
using namespace std;
char str[1000005];
int main()
{
int xall[10]={0,-1,0,1,-1,0,1,-1,0,1};
int yall[10]={0,-1,-1,-1,0,0,0,1,1,1};
int t;
scanf("%d",&t);
getchar();
// cin>>t;
while(t--)
{
gets(str);
//scanf("%s",str);
//printf("%d\n",strlen(str));
int x1,y1,x2,y2;
long long area=0;
x1=0;
y1=0;
int len=strlen(str);
for(int i=1;i<len;i++)
{
int j=str[i]-'0';
x2=xall[str[i]-'0']+x1;
y2=yall[str[i]-'0']+y1;
int tmp=x1*y2-y1*x2;
area+=tmp;
x1=x2;
y1=y2;
}
if(area<0) area=-area;
if(area%2==0) printf("%lld\n",area/2);
else printf("%lld.5\n",area/2);
}
return 0;
}