fork download
  1. #include<bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5.  
  6. int clc(string tm,string zone)
  7. {
  8. int sum = 0;
  9.  
  10. if(zone == "PM"){
  11. if(tm[0] != '1' && tm[1] != '2') sum = 12*3600;
  12. }
  13.  
  14. int s = 0,d=3600;
  15. for(int i=0;i<tm.size();i++){
  16. if(tm[i]==':'){
  17. sum += s * d;
  18. d /= 60;
  19. s = 0;
  20. }
  21. else s = (s*10) + tm[i]-'0';
  22. }
  23. sum += s;
  24. return sum;
  25. }
  26. int main()
  27. {
  28.  
  29. string str[200];
  30. int ttl = 0,days=0;
  31.  
  32. while(cin>>str[0]){
  33. days++;
  34. for(int i=1;i<=12;i++) cin>>str[i];
  35. ttl += clc(str[10],str[11]) - clc(str[7],str[8]);
  36. }
  37.  
  38. int avg = ttl / days;
  39.  
  40. cout<<"Total Attendance : "<<days<<" Days"<<endl<<endl;
  41.  
  42.  
  43. int hour = ttl / 3600; ttl %= 3600;
  44. int minute = ttl / 60; ttl %= 60;
  45. cout<<"Total Office Time : "<<endl;
  46. cout<<" "<<hour<<" Hours "<<minute<<" Minutes "<<ttl<<" Seconds"<<endl<<endl;
  47.  
  48. int h = avg / 3600; avg %= 3600;
  49. int m = avg / 60; avg %= 60;
  50. int s = avg;
  51. cout<<"Average Time Per Day : "<<endl;
  52. cout<<" "<<h<<" Hours "<<m<<" Minutes "<<s<<" Seconds"<<endl<<endl;
  53.  
  54.  
  55. }
  56.  
Success #stdin #stdout 0.01s 5312KB
stdin
18 Apr 2024	8:10:00 AM	4:00:00 PM	7:41:21 AM	N	4:07:41 PM	N
20 Apr 2024	8:10:00 AM	4:00:00 PM	7:42:11 AM	N	4:14:19 PM	N
21 Apr 2024	8:10:00 AM	4:00:00 PM	7:38:04 AM	N	4:14:19 PM	N
22 Apr 2024	8:10:00 AM	4:00:00 PM	7:41:01 AM	N	4:16:06 PM	N
23 Apr 2024	8:10:00 AM	4:00:00 PM	7:41:23 AM	N	4:12:49 PM	N
24 Apr 2024	8:10:00 AM	4:00:00 PM	7:42:08 AM	N	4:14:57 PM	N
25 Apr 2024	8:10:00 AM	4:00:00 PM	7:34:28 AM	N	3:59:06 PM	Y
27 Apr 2024	8:10:00 AM	4:00:00 PM	7:38:43 AM	N	4:14:39 PM	N
28 Apr 2024	8:10:00 AM	4:00:00 PM	7:42:04 AM	N	4:15:04 PM	N
29 Apr 2024	8:10:00 AM	4:00:00 PM	7:41:05 AM	N	4:15:29 PM	N
30 Apr 2024	8:10:00 AM	4:00:00 PM	7:37:41 AM	N	4:16:12 PM	N
02 May 2024	8:10:00 AM	4:00:00 PM	8:23:54 AM	Y	3:53:24 PM	Y
04 May 2024	8:10:00 AM	4:00:00 PM	7:43:13 AM	N	4:13:05 PM	N
05 May 2024	8:10:00 AM	4:00:00 PM	8:07:41 AM	N	4:17:12 PM	N
06 May 2024	8:10:00 AM	4:00:00 PM	7:50:50 AM	N	4:09:26 PM	N
07 May 2024	8:10:00 AM	4:00:00 PM	7:50:41 AM	N	4:17:12 PM	N
08 May 2024	8:10:00 AM	4:00:00 PM	7:40:38 AM	N	4:17:37 PM	N
09 May 2024	8:10:00 AM	4:00:00 PM	8:05:29 AM	N	4:11:06 PM	N
13 May 2024	8:10:00 AM	4:00:00 PM	7:53:58 AM	N	4:17:05 PM	N
14 May 2024	8:10:00 AM	4:00:00 PM	7:40:29 AM	N	4:15:37 PM	N
stdout
Total Attendance : 20 Days

Total Office Time : 
                    168 Hours 35 Minutes 23 Seconds

Average Time Per Day : 
                       8 Hours 25 Minutes 46 Seconds