티스토리 뷰

행/열에 대한 합을 저장하는 (col, row) 배열과. 증가대각선,감소대각선에 대한 합을 저장하는 변수(Adddiagonal/Minusdiagonal)를 미리 선언했습니다.

- 2중 for문을 통해 수를 입력받으면서 해당 행/열의 합, 대각선의 합에 값을  더해줍니다.

- 입력이 끝난 후 배열과 변수에 저장된 값  중 가장 큰 값이 답이 됩니다.


C++ 소스 코드

#include <iostream>
#include <algorithm>
using namespace std;
int col[100],row[100],Adddiagonal,Minusdiagonal;
int main(){
    int t,num;
    for(int tc = 1;tc<=10;tc++){
        fill(&col[0], &col[99]+1,0);
        fill(&row[0], &row[99]+1,0);
        Adddiagonal = 0; Minusdiagonal = 0;
        cin >>  t;
        for(int i=0;i<100;i++){
            for(int j=0;j<100;j++){
                cin >> num;
                col[j]+=num;
                row[i]+=num;
                if (i==j) {
                    Adddiagonal+=num;
                }
                if (99-i == j ){
                    Minusdiagonal+=num;
                }
            }
        }
        int a = *max_element(col,col+100);
        int b = *max_element(row,row+100);
        cout << "#" <<tc <<' '<<max(max(a,b),max(Adddiagonal,Minusdiagonal)) << '\n';
    }
    return 0;
}
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/10   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함