luogu_1095 守望者的逃离

#include<bits/stdc++.h>
using namespace std;
int m,s,t,T,now,run,ans=99999999,k,maxn;
int main(){
    int i;
    scanf("%d%d%d",&m,&s,&t);
    while(now<s){
        run=now+(t-T)*17;
        if(T>=t)break;
        if(run<s && run>maxn)maxn=run;
        if(run>=s){
            if((s-now)%17)k=(s-now)/17+1;
            else k=(s-now)/17;
            run=T+k;
            if(run<ans)ans=run;
        }
        if(m>=10)m-=10,now+=60,T+=1;
        else T+=1,m+=4;
        if(T<=t && now>maxn)maxn=now;
    }
    if(T<=t && now>=s && T<ans) ans=T; 
    if(ans==99999999)printf("No\n%d",maxn);
    else printf("Yes\n%d",ans);
    return 0;
}

  

posted @ 2017-09-14 21:20  wqtnb_tql_qwq_%%%  阅读(201)  评论(0编辑  收藏  举报