201812
1.小明上学
#include <bits/stdc++.h>
using namespace std;
int main()
{
int r,y,g;
cin>>r>>y>>g;
int i,n,a,b,sum=0;
cin>>n;
for(i=0;i<n;i++)
{
cin>>a>>b;
if(a==0)
sum+=b;
else if(a==1)
sum+=b;
else if(a==2)
sum+=b+r;
else
sum+=0;
}
cout<<sum;
return 0;
}
2.小明放学
#include <bits/stdc++.h>
using namespace std;
struct point{
int k;
long long t;
}p[100005];
int main()
{
int r,y,g;
cin>>r>>y>>g;
int i,n,a,b;
long long sum=0;
cin>>n;
for(i=0;i<n;i++)
{
cin>>a>>b;
p[i].k=a;
p[i].t=b;
}
for(i=0;i<n;i++)
{
if(p[i].k==0)
sum+=p[i].t;
else
{
if(p[i].k==1)
p[i].t=r-p[i].t+sum;
else if(p[i].k==2)
p[i].t=r+g+y-p[i].t+sum;
else
p[i].t=r+g-p[i].t+sum;
p[i].t=p[i].t%(r+y+g);
if(p[i].t<r)
sum+=r-p[i].t;
else if(p[i].t<r+g)
sum+=0;
else
sum+=g+y+r+r-p[i].t;
}
}
cout<<sum;
return 0;
}