POJ 2501 Average Speed G++

    xiaoxiao2021-03-25  101

    #include <iostream> #include <string> #include <iomanip> using namespace std; //不会跨越一天 double miao(string x) { int xs=(x[0]-'0')*10+(x[1]-'0'); int fe=(x[3]-'0')*10+(x[4]-'0'); int mi=(x[6]-'0')*10+(x[7]-'0'); return xs*3600+fe*60+mi; } int main() { string s; double cti=0;//当前时间 double csp=0;//当前速度 double sum=0;//变速前行驶的距离 while(getline(cin,s).eof()!=1) { if(s.size()>8) { string sa,sb; sa=s.substr(0,8); sb=s.substr(9,s.size()); //cout<<sa<<endl; //cout<<sb<<endl; double ti=miao(sa); double sp=0; for(int i=0;i<sb.size();i++) { sp=sp*10+sb[i]-'0'; } sp=sp/3.6;//每秒多少米 //cout<<ti<<endl; //cout<<sp<<endl; sum=sum+(ti-cti)*csp; cti=ti; csp=sp; }else { double time=miao(s); cout<<s<<" "<<fixed<<setprecision(2)<<(sum+(time-cti)*csp)/1000.0<<" km"<<endl; } } return 0; }

     

    转载请注明原文地址: https://ju.6miu.com/read-24664.html

    最新回复(0)