RT,本地和IDE测第一个测试点的数据都输出"No Solution"(已下载测评数据,是正确答案),但是显示WA。有人能帮忙看看是真的吗?(附代码及提交记录)
#include<bits/stdc++.h>
#define ll long long
#define INF 0x7f7f7f7f
#define lowbit(x) x & -x
#define re register
using namespace std;
int read()
{
bool k=0;
int w=0;
char c=getchar();
while ((c<'0'||c>'9')&&c!='-')
c=getchar();
if (c=='-')
{
k=1;
c=getchar();
}
while (c>='0'&&c<='9')
{
w=(w<<3)+(w<<1)+c-'0';
c=getchar();
}
return k?-w:w;
}
int n;
int maxn;
double t;
double a[102][102];
int i,j,k;
signed main()
{
n=read();
for (i=1;i<=n;i++)
for (j=1;j<=n+1;j++)
scanf("%lf",&a[i][j]);
for (i=1;i<=n;i++)
{
maxn=i;
for (j=i+1;j<=n;j++)
maxn=(fabs(a[j][i])>fabs(a[maxn][i]))?j:maxn;
for (j=1;j<=n+1;j++)
swap(a[i][j],a[maxn][j]);
if (a[i][i]==0)
{
printf("No Solution");
return 0;
}
for (j=1;j<=n;j++)
if (j!=i)
{
t=a[j][i]/a[i][i];
for (k=i+1;k<=n+1;k++)
a[j][k]-=a[i][k]*t;
}
}
for (i=1;i<=n;i++)
printf("%.2f\n",a[i][n+1]/a[i][i]);
return 0;
}