题意
思路
- 1.确定初始为0 的位置的值
- 2.刮开3个位置
- 3.确定计算的位置求和
坑点
- 1.不管有无刮开最后的和都要算入
#include<bits/stdc++.h>
using namespace std;
int a[5][5];
int b[5][5]={0};
int f[19]={10000,36,720,360,80,252,108,72,54,180,72,180,119,36,306,1080,144,1800,3600};
int s=45;
int main()
{
int x=0,y=0;//找到初始为0的位置
for(int i=1;i<=3;i++)
{
for(int j=1;j<=3;j++)
{
cin>>a[i][j];
if(a[i][j]==0)
{
x=i;
y=j;
}
s-=a[i][j];
}
}
a[x][y]=s;//确定他的值
b[x][y]=1;
for(int i=0;i<3;i++)//玩家刮开的三个位置
{
int e,f;
cin>>e>>f;
cout<<a[e][f]<<endl;
b[e][f]=1;
}
int q;
cin>>q;
int sum=0;//统计分值和
if(q>=1&&q<=3)
for(int i=1;i<=3;i++)
sum+=a[q][i];else if(q>=4&&q<=6)
for(int i=1;i<=3;i++)sum+=a[i][q-3];
else if(q==7)
for(int i=1;i<=3;i++)sum+=a[i][i];
else
sum=a[1][3]+a[2][2]+a[3][1];
cout<<f[sum-6];
return 0;
}