BOJ2217:Lop-C++


ロープ本



コード#コード#

#include <string>
#include <vector>
#include <iostream>
#include <cmath>
#include <map>
#include <algorithm>
using namespace std;

int main(){
    ios::sync_with_stdio(0);
    cin.tie(0);

    int N;
    cin >> N;
    vector<int> v(N);
    for(int i=0;i<N;i++) cin >> v[i];
    sort(v.begin(), v.end());
    int MAX = v[0];
    for(int i=0;i<N;i++)
    {
        int t = (v.size() - i)*v[i];
        MAX = max(MAX, t);
    }
    cout << MAX;
    return 0;
}
  • 論理
    1)ケーブルの長さを昇順に並べる
    2)巡回forゲート、v[i]*뒤에남은 개수の最大値を求めて、MAXを更新します