#zj c295
1 messages · Page 1 of 1 (latest)
測試通過提交NA65%
你有輸出可以整除後選擇的數字嗎?🤔
for(int i=0;i<n;i++){
if(tt%ans[i] == 0){
cout << ans[i] << " ";
judge=0;
}
}```
here
窩好笨 xd
int n, m;
cin >> n >> m;
int sum = 0;
vector<int> sel(n);
for (int i = 0; i < n; ++i) {
int b = INT_MIN;
for (int j = 0; j < m; ++j) {
int x;
cin >> x;
if (x > b) b = x;
}
sum += b;
sel.push_back(b);
}
cout << sum << '\n';
bool has = false;
for (int it : sel) {
if (sum % it == 0) {
cout << it << ' ';
has = true;
}
}
if (!has) {
cout << "-1";
}
話說 #1019773169927737366
這縮排發生什麼事
第一層for裡面的東西沒包好
.w.?
?
話說 我寫的和這個用的方法差不多 但是不知道問題在哪
話說我漏看沒有要印-1
人腦☕
我很容易把解法弄得太複雜
x拿掉就少一個m*n了
對欸 因為只要保留同一行內最大的值
然後,算總和也沒必要迭代ans一次
#include <iostream>
#include <vector>
using namespace std;
int main(){
int n,m,tt=0,temp;
cin >> n >> m;
vector<int> ans(n);
for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
cin >> temp;
ans[i] = max(ans[i],temp);
}
tt += ans[i];
}
cout << tt << endl;
bool judge=1;
for(int i=0;i<n;i++){
if(tt%ans[i] == 0){
cout << ans[i] << " ";
judge=0;
}
}
if(judge){
cout << "-1";
}
return 0;
}```
改這樣還是65%
😢
超好笑 撿到槍
在半夜解題 大佬orz
我剛又確認了一下,最後一個數字後不能有空格
所以把最後那個迴圈中改成:
if (tt % ans[i] == 0) {
if (!judge) cout << ' ';
cout << ans[i];
judge = 0;
}
