寝癖頭の解法

小学生の目線から、勉強中の覚え書きを投稿、更新していきます。

Aizu Online Judge in C++ #Volume16 - 1632 : Scores of Final Examination

Aizu Online Judge(AOJ)の過去問から、その提出コードの解答例です。

・問題: "Scores of Final Examination"

onlinejudge.u-aizu.ac.jp
私は,中学校の教師である.
ちょうど期末試験が終わったところで,すべての科目について全生徒の点数が手元にある.
どれぐらい高い合計点を得た生徒がいるのか知りたいのだが,科目ごとの得点データになっているので,作業が容易でない. そこで,優秀なプログラマであるあなたに手助けしてほしい.

僕が作成、提出したコードは、以下のとおりです。

Aizu Online Judge in C++ #Volume16 - 1632 : Scores of Final Examination
/*
Aizu Online Judge in C++ #Volume16 - 1632 : Scores of Final Examination
https://onlinejudge.u-aizu.ac.jp/problems/1632
 提出コードの解答例
 https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
    while(1){
        int n,m;
        cin>>n>>m;
        if(n==0 && m==0){
            return 0;
        }
        vector<vector<int> > p(m,vector<int>(n));
        for(int i=0;i<m;i++){
            for(int j=0;j<n;j++){
                cin>>p[i][j];
            }
        }
        vector<int> v;
        for(int i=0;i<n;i++){
            int sum=0;
            for(int j=0;j<m;j++){
                sum+=p[j][i];
            }
            v.push_back(sum);
        }
        int ans=-1;
        for(int i=0;i<n;i++){
            ans=max(ans,v[i]);
        }
        cout<<ans<<endl;
    }
}

設問の出典は、プログラミング問題のオンライン採点システム「Aizu Online Judge(AOJ)」です。
http://judge.u-aizu.ac.jp/onlinejudge/