#include <vector>
class IntersectionFlowRate
{
public:
IntersectionFlowRate(int num = 4);
void setFlowCycle(int index, int flow);
void setFlowCar(int index, int flow);
void setFlowTruck(int index, int flow);
std::vector<int>& getFlowCycle() { return m_flowRateMotorCycle; }
std::vector<int>& getFlowCar() { return m_flowRateCar; }
std::vector<int>& getFlowTruck() { return m_flowRateTruck; }
private:
std::vector<int> m_flowRateMotorCycle;
std::vector<int> m_flowRateCar;
std::vector<int> m_flowRateTruck;
};
IntersectionFlowRate::IntersectionFlowRate(int num) :
m_flowRateMotorCycle(num,0), m_flowRateCar(num,0), m_flowRateTruck(num,0)
{ }
int main()
{
IntersectionFlowRate flowRate(4);
}
I2luY2x1ZGUgPHZlY3Rvcj4KY2xhc3MgSW50ZXJzZWN0aW9uRmxvd1JhdGUKewoJcHVibGljOgoJICAgIEludGVyc2VjdGlvbkZsb3dSYXRlKGludCBudW0gPSA0KTsKCSAgICB2b2lkIHNldEZsb3dDeWNsZShpbnQgaW5kZXgsIGludCBmbG93KTsKCSAgICB2b2lkIHNldEZsb3dDYXIoaW50IGluZGV4LCBpbnQgZmxvdyk7CgkgICAgdm9pZCBzZXRGbG93VHJ1Y2soaW50IGluZGV4LCBpbnQgZmxvdyk7CgkgICAgc3RkOjp2ZWN0b3I8aW50PiYgZ2V0Rmxvd0N5Y2xlKCkgeyByZXR1cm4gbV9mbG93UmF0ZU1vdG9yQ3ljbGU7IH0KCSAgICBzdGQ6OnZlY3RvcjxpbnQ+JiBnZXRGbG93Q2FyKCkgICB7IHJldHVybiBtX2Zsb3dSYXRlQ2FyOyB9ICAKCSAgICBzdGQ6OnZlY3RvcjxpbnQ+JiBnZXRGbG93VHJ1Y2soKSB7IHJldHVybiBtX2Zsb3dSYXRlVHJ1Y2s7IH0KCQoJcHJpdmF0ZToKCSAgICBzdGQ6OnZlY3RvcjxpbnQ+IG1fZmxvd1JhdGVNb3RvckN5Y2xlOwoJICAgIHN0ZDo6dmVjdG9yPGludD4gbV9mbG93UmF0ZUNhcjsKCSAgICBzdGQ6OnZlY3RvcjxpbnQ+IG1fZmxvd1JhdGVUcnVjazsKfTsKCkludGVyc2VjdGlvbkZsb3dSYXRlOjpJbnRlcnNlY3Rpb25GbG93UmF0ZShpbnQgbnVtKSA6Cm1fZmxvd1JhdGVNb3RvckN5Y2xlKG51bSwwKSwgbV9mbG93UmF0ZUNhcihudW0sMCksIG1fZmxvd1JhdGVUcnVjayhudW0sMCkKeyB9CgppbnQgbWFpbigpCnsKCUludGVyc2VjdGlvbkZsb3dSYXRlIGZsb3dSYXRlKDQpOyAgCn0=