Aizu Online Judge(AOJ)の過去問から、その提出コードの解答例です。
・問題 "Dangerous Bridge"
https://onlinejudge.u-aizu.ac.jp/problems/0231
・危ない橋
僕が作成、提出したコードは、以下のとおりです。
・Aizu Online Judge in C++ #Volume2 - 0231 : Dangerous Bridge
/* Aizu Online Judge in C++ #Volume2 - 0231 : Dangerous Bridge https://onlinejudge.u-aizu.ac.jp/problems/0231 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; using ll=long long; pair<ll,ll> p[200]; int main(void){ ll n; while(cin>>n,n){ for(ll i=0;i<n;i++){ ll m,a,b; cin>>m>>a>>b; p[2*i]=make_pair(a,m); p[2*i+1]=make_pair(b,-m); } sort(p,p+n*2); bool tf=true; ll num=0; for(ll i=0;i<n*2;i++){ num+=p[i].second; if(num>150){ tf=false; } } cout<<(tf ? "OK\n" : "NG\n"); } return 0; }
設問の出典は、プログラミング問題のオンライン採点システム「Aizu Online Judge(AOJ)」です。
http://judge.u-aizu.ac.jp/onlinejudge/