Codeforces #169 Div2 A "Lunch Rush"
問題
休憩時間K分を使ってレストランに食事を取りに行く
この辺りにはレストランがN個ある。
各レストランには満足度Fと食事にかかる時間Tが与えられている。
満足度はT<=KであればFとなるが、
T>KであればF-(T-K)となる。(この場合、満足度が0より小さくなる事もある)
一番高い満足度が得られるレストランの、
その満足度を返せ。
制約
1 <= N <= 10^4
1 <= K,T,F <= 10^9
方針
全部のレストランの満足度を計算してくだけ
ソースコード
int main() { istream& in = cin; int N, K; in >> N >> K; int res = INT_MIN; for( int i = 0; i < N; i++ ){ int f, t; in >> f >> t; if( t > K ){ res = max( res, f - (t-K) ); }else{ res = max( res, f ); } } cout << res << endl; }