###問題文
3×3のグリッドがあります. 上から i番目で左から j番目のマスを (i,j)で表すとき, マス (i,j)には数 ci,jが書かれています.高橋君によると, 整数 a1,a2,a3,b1,b2,b3の値が決まっており, マス (i,j)には数 ai+bjが書かれているらしいです.高橋君の情報が正しいか判定しなさい.
###制約
ci,j(1≤i≤3,1≤j≤3)は 0以上 100以下の整数
とありまして自分のコードは
#include <bits/stdc++.h> using namespace std; int main(){ int x[0] = {}; int y[0] = {}; int a[0][0] = {}; for (int i = 0;i < 3;i++) y[i] = a[0][i] - x[0]; for (int i = 0;i < 3;i++) x[i] = a[0][i] - y[0]; bool good = true; for (int i=0;i<3;i++){ for (int j=0;j<3;i++){ if(x[i]+y[i] != a[i][j]){ good = false; } } } if(good = true) cout << "Yes" << endl; else cout << "No" << endl; }
となります。これで提出したところTLEとなってしまいました。
###試したこと
x[0] = {},y[0] = {},a[0][0] = {}の{}を0にしてみました。
すると
error: array must be initialized with a brace-enclosed initializer
となってしまいました。今回の問題は解説PDFにサンプルコードがなくてこちらの解説ビデオ
https://www.youtube.com/watch?v=tXsdcYBhmtIを参考にやったのですがうまく行きませんでした。
TLEになるほど計算量多いでしょうか?このコードの改善法がわかる方いらっしゃいましたら教えていただけると幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/04/02 09:34