#15281: 小心測資結尾判斷及小數點問題


2qbingxuan (程式初學者)

School : 臺北市立建國高級中學
ID : 58274
IP address : [114.32.125.176]
Last Login :
2021-10-27 10:41:00
d623. 反方陣 -- leopan0922 | From: [180.217.156.36] | Post Date : 2018-09-26 00:01

/*

本題似乎測資不是以四個零作結束,因此判斷結尾最好和EOF讀檔混用,以免TLE

另外,小數點後必須剛好5位數字,這可以用C style的"%.5f"或C++ style的fixed << setprecisionx來辦到

其實這種題目應該啟用浮點數比對之類的...題幹也未提要如何輸出...目前的測資真的是爛掉的

*/

#include <bits/stdc++.h>

using namespace std;

int main(){
    ios::sync_with_stdio(false);//原先以為TLE原因是頻繁I/O而加上的
    cin.tie(0);
    double a, b, c, d;
    double det;
    while(cin >> a >> b >> c >> d){
        if(a == 0 && b == 0 && c == 0 && d == 0)return 0;
        det = a * d - b * c;
        if(det == 0)cout << "cheat!\n";
        else cout << fixed << setprecision(5) << d / det << ' ' << -b / det << '\n' << -c / det << ' ' << a / det << '\n';
    }
    return 0;
}

 
ZeroJudge Forum