SRM481 Div2 Easy(250) CircleMarket
#include <vector> using namespace std; // a=b*x+yが成り立つ最小の非負整数yを返す int rem( int a, int b ) { return (a%b+b)%b; } class CircleMarket{public: int makePurchases( vector <int> openTime, vector <int> closeTime, int travelTime ) { int n = (int)openTime.size(); int c = 0; for ( int i=0; i<n; i++ ) if ( openTime[i] + rem( i*travelTime-openTime[i], n*travelTime ) <= closeTime[i] ) c++; return c; }};