QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#418498 | #8674. Riddle of the Sphinx | by_chance# | WA | 1ms | 3700kb | C++14 | 1.3kb | 2024-05-23 14:15:46 | 2024-05-23 14:15:47 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double db;
int a[5][4]={{1,1,1,0},{1,0,0,0},{0,0,1,0},{0,1,0,0},{1,2,3,0}};
db b[3][4],c[3],eps=1e-8;
void calc(int p1,int p2,int p3){
for(int j:{0,1,2,3})
b[0][j]=a[p1][j],b[1][j]=a[p2][j],b[2][j]=a[p3][j];
for(int i=0;i<3;i++){
int p=i;for(;p<3;p++)if(b[p][i]>eps)break;
for(int j=0;j<=3;j++)swap(b[p][j],b[i][j]);
for(int j=i+1;j<3;j++){
db d=b[j][i]/b[i][i];
for(int k=0;k<=3;k++)b[j][k]-=d*b[i][k];
}
}
for(int j=3-1;j>=0;j--){
c[j]=b[j][3];
for(int k=j+1;k<3;k++)
c[j]-=b[j][k]*c[k];
c[j]/=b[j][j];
}
int flag=1,cnt=0;
for(int j=0;j<3;j++)
if(abs(int(c[j]+0.5)-c[j])>eps||c[j]<0)flag=0;
for(int i=0;i<5;i++){
double x=a[i][0]*c[0]+a[i][1]*c[1]+a[i][2]*c[2];
cnt+=(abs(x-a[i][3])<eps);
}
if(cnt==4&&flag==1){
for(int j=0;j<3;j++)
cout<<int(c[j]+0.5)<<' ';
cout<<endl;exit(0);
}
}
int main(){
for(int i=0;i<5;i++){
cout<<a[i][0]<<' '<<a[i][1]<<' '<<a[i][2]<<' '<<endl;
cin>>a[i][3];
}
calc(0,1,2);calc(0,3,4);calc(1,2,3);
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 0
Wrong Answer
time: 1ms
memory: 3700kb
input:
6 1 3 2 14
output:
1 1 1 1 0 0 0 0 1 0 1 0 1 2 3
result:
wrong answer format Unexpected end of file - int32 expected