概要
三種類のトレーニングを順に(循環する)実行していく。
i 番目に実行されるトレーニングの反復回数がそれぞれ与えられるので、最も多く実行されるトレーニングを求めよ。
解法
数えるだけ。
コード
typedef vector<int> VI; #define REP( i, m, n ) for ( int i = (int)( m ); i < (int)( n ); ++i ) #define ALL( c ) (c).begin(), (c).end() const string res[] = { "chest", "biceps", "back" }; int main() { cin.tie( 0 ); ios::sync_with_stdio( false ); int n; cin >> n; VI counts( 3, 0 ); REP( i, 0, n ) { int a; cin >> a; counts[ i % 3 ] += a; } cout << res[ max_element( ALL( counts ) ) - counts.begin() ] << endl; return 0; }