Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
为什么OLE啊啊啊???????????郁闷#include <iostream> using namespace std; void tran1(char line[], int &h1, int &m1, int &s1, float &v) { int i, m; h1 = (line[0]-48)*10 + line[1]-48; m1 = (line[3]-48)*10 + line[4]-48; s1 = (line[6]-48)*10 + line[7]-48; m = 1; v = 0; for(i=strlen(line)-1; line[i]!=' '; i--) { v += (line[i]-48)*m; m *= 10; } } void tran2(char line[], int &h1, int &m1, int &s1) { h1 = (line[0]-48)*10 + line[1]-48; m1 = (line[3]-48)*10 + line[4]-48; s1 = (line[6]-48)*10 + line[7]-48; } int main() { char line[20]; int h1, m1, s1; int h2, m2, s2; float v1=0, v2=0, dis, dt; int flag; gets(line); tran1(line, h1, m1, s1, v1); dis = 0; while(1) { dt = 0; flag = 0; if(line[8] == ' ') { tran1(line, h2, m2, s2, v2); if(s2<s1) { s2 += 60; flag = -1; if(m2+flag<m1) { m2 += flag + 60; flag = -1; } else flag = 0; h2 += flag; } else if(s2>s1 && m2<m1) { h2--; m2 +=60; } dt = (h2-h1)*3600 + (m2-m1)*60 + s2-s1; dt /= 3600; dis += dt*v1; v1 = v2; h1 = h2; m1 = m2; s1 = s2; } else { tran2(line, h2, m2, s2); if(s2<s1) { s2 += 60; flag = -1; if(m2+flag<m1) { m2 += flag + 60; flag = -1; } else flag = 0; h2 += flag; } else if(s2>s1 && m2<m1) { h2--; m2 +=60; } dt = (h2-h1)*3600 + (m2-m1)*60 + s2-s1; dt /= 3600; dis += dt*v1; cout.setf(ios::fixed);///// cout.precision(2); cout<<line<<" "<<dis<<" km"<<endl; h1 = h2; m1 = m2; s1 = s2; } if((gets(line))==EOF) break; } return 0; } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator