#26131: 真的是謎題


moneymade (qqqqqqqqqqq)

學校 : 不指定學校
編號 : 145282
來源 : [106.1.174.98]
最後登入時間 :
2021-07-23 14:40:02
d534. 1. 戰艦謎題 -- 98學年度北基區資訊學科能力競賽 | From: [114.38.52.190] | 發表日期 : 2021-07-18 06:05

在我的電腦上跑出來都與正確答案一樣,但送出去跑出來的結果竟然不一樣??

而且利用 測試執行,陣列row裡面的值還會自己改變..........

測資分別是

1 5 2 4

------------

4 2 5 1

------------

4 3 5 2
---------
5 1 2 4
---------
2 4 5 1

#include<iostream> using namespace std; int main() { int row[2],col[2]; int arr[2][2]; bool weight[4]; int no,t1,t2; cin>>row[0]>>row[1]>>col[0]>>col[1]; int i,j,k; for(i=0; i<2; i++) { for(j=0; j<2; j++) { memset(weight,false,sizeof weight); arr[i][j]=0; arr[i][(-1)*j+1] = row[i]; //same row arr[(-1)*i+1][j] = col[j]; //same col weight[row[i]]=true; weight[col[j]]=true; t1 = row[(-1)*i+1] - arr[(-1)*i+1][j]; t2 = col[(-1)*j+1] - arr[i][(-1)*j+1]; no = 0; if(t1>0) { weight[t1]=true; } for(k=1; k<4; k++) { if(!(weight[k])) { no = 1; } } if(t1==t2 && no==0) { arr[(-1)*i+1][(-1)*j+1] = t1; cout<<arr[0][0]<<" "<<arr[0][1]<<endl; cout<<arr[1][0]<<" "<<arr[1][1]<<endl; return 0; } } } cout<< "No solutions.\n"; return 0; }
 
ZeroJudge Forum