📄 3044986_ac_15ms_164k.c
字号:
#include <stdio.h>
#include <math.h>
double f(double a[][5])
{
return a[1][1]*(a[2][2]*a[3][3]-a[2][3]*a[3][2])-a[1][2]*(a[2][1]*a[3][3]-a[2][3]*a[3][1])+a[1][3]*(a[2][1]*a[3][2]-a[2][2]*a[3][1]);
}
int main()
{
int n;
int i, j;
double a[5][5], c[5][5], b[5], deta, detai[4];
scanf("%d",&n);
while(n--)
{
for(i = 1; i < 4; i++)
{
for(j = 1; j < 4; j++)
{
scanf("%lf",&a[i][j]);
c[i][j] = a[i][j];
}
scanf("%lf",&b[i]);
}
deta = f(a);
for(i = 1; i < 4; i++)
{
for(j = 1; j < 4; j++)
{
a[j][i] = b[j];
}
detai[i] = f(a);
for(j = 1; j < 4; j++)
{
a[j][i] = c[j][i];
}
}
for(i = 1; i < 4; i++)
{
printf("%.0lf ",detai[i]);
}
printf("%.0lf",deta);
if(deta==0)
{
puts("\nNo unique solution\n");
continue;
}
printf("\nUnique solution:");
for(i = 1; i < 4; i++)
{
detai[i] /= deta;
if(fabs(detai[i])<0.0005)
detai[i] = 0;
printf(" %.3lf",detai[i]);
}
puts("\n");
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -