我自己下載NPSC的測試資料...
跟他的輸出檔完全一樣阿= =""
以下是我的程式:
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main()
{
stringstream ss("");
int N=0;
cin>>N;
while(N>0){
N--;
int n=0,p=0,J=0,I=0;
double i=0,j=0;
cin>>n>>p;
if(n%2==1){
i=(n-1)*p*0.8+p;
}
else{
i=n*p*0.8;
}
j=n*p*0.812;
J=j;
I=i;
if(j-J!=0){
J++;
}
if(i-I!=0){
I++;
}
if(I<J){
ss<<": )\n";
}
else if(I==J){
ss<<"SAME\n";
}
else{
ss<<"8-12=-4\n";
}
}
cout << ss.str();
return 0;
}
這種方式就沒有誤差的可能了
採用之原因:
6/10→3/5 最簡分數 看分母
812/1000→203/250 一樣 只有整除不會+1
這種方式就沒有誤差的可能了
採用之原因:
6/10→3/5 最簡分數 看分母
812/1000→203/250 一樣 只有整除不會+1
兩位說的我都看不懂=.="",
我用*812/1000在第一個測資就爆了=.=""...