题解 | 球格模型(简单版)
球格模型(简单版)
https://www.nowcoder.com/practice/fada102a84ec459ea93e3db4918c0f04?tpId=37&tags=&title=&difficulty=0&judgeStatus=0&rp=1&sourceUrl=%2Fexam%2Foj%2Fta%3Fpage%3D3%26tpId%3D37%26type%3D37
#include <iostream> using namespace std; int main() { int n, m, k; cin >> n >> m >> k; if(k < max(m, n)) { cout << -1 << endl; return 0; } int diff = k - max(m, n) + 1; //让第一行第一列的格子里放diff个,后面的k-1个格子里都是1即可 for(int i = 0; i < n; ++i) { for(int j = 0; j < m; ++j) { if(i == j) { if(i == 0) cout << diff; else cout << 1; } else { if(n > m && i >= m && j == m-1) cout << 1; else if(n < m && i == n-1 && j >= n) cout << 1; else cout << 0; } cout << " "; } cout << endl; } return 0; }