矩阵取数游戏C++(矩阵取数游戏C++实现)
#includeiostream
#includestring .h
using namespace std;
int s[105][105],n,m;
struct node{
int a[20];
}sum;
node jia (node a,node b)
{}//高精?
node ans;
int len=max(a.a[0],b.a[0]);
memset(ans.a,0,sizeof(ans.a));
for (int i=1;i=len;i++)
{
ans.a[i]=a.a[i]+b.a[i];
while (ans.a[i]9)
{
ans.a[i]-=10;
ans.a[i+1]++;
}
}
if (ans.a[len+1]==0)
ans.a[0]=len;
else
ans.a[0]=len+1;
return ans;
}
node score (int a;int n)
{}//取数得分(这个地方把高精乘低精包含进去了,直接默认乘2)
node ans;
int len=0;
memset(ans.a,0,sizeof(ans.a));
while (a!=0)
{
len++;
ans.a[i]=a%10;
a/=10;
}
ans.a[0]=len;
for (int i=1;i=n;i++)
{
for (int j=1;j=len;j++)
ans.a[j]*=2;
for (int j=1;j=len;j++)
while (ans.a[j]9)
{
ans.a[j]-=10;
ans.a[j+1]++;
}
}
if (ans.a[len+1]==0)
ans.a[0]=len;
else
ans.a[0]=len+1;
return ans;
}
int main(void)
{
cinnm;
for (int i=1;i=n;i++)
for (int j=1;j=m;j++)
cins[i][j];
//其他照旧dp ......
}
下一篇:求思路NOIP2007矩阵取数游戏上一篇:pascal取数游戏