#include < bits / stdc ++. h > using namespace std ; int main () { long long H ; int n , i ; cin >> H >> n ; long long d [ n ], sum = 0 , h = H , gap = 0 ; for ( i = 0 ; i < n ; i ++) { cin >> d [ i ]; sum -= d [ i ]; h = h + d [ i ]; if ( h <= 0 ) { cout << i + 1 << endl ; return 0 ; } gap = max ( gap , sum ); } if ( sum <= 0 ) { cout << "-1" << endl ; return 0 ; } long long whole =( H - gap )/ sum ; H = H - whole * sum ; long long result = whole * n ; for ( i = 0 ;; i ++) { H = H + d [ i % n ]; result ++; if ( H <= 0 ) { cout << result << endl ; break ; } } return 0 ; }
this blog contains questions and solutions of codeforces(a competitive programming website) problems. It also contains algorithms and data structures.