Advertisement
Guest User

first_solution(good)

a guest
Jan 22nd, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.62 KB | None | 0 0
  1. /*
  2. Пример ввода:
  3. 333
  4. {04:20}{21:00}{12:15}{06:55}{02:00}{13:13}{23:59}{00:00}{15:15}{18:19}{03:03}{}
  5. Кол-во минут для каждого значения:
  6. 260; 1260; 735; 415; 120; 793; 1439; 0; 915; 1099; 183
  7. Правильный ответ: 7
  8. */
  9.  
  10. #include <stdio.h>
  11. #include <stdlib.h>
  12. #include <math.h>
  13.  
  14. #define INCR 10
  15. #define HOURMIN 60
  16.  
  17. typedef struct Just_time{
  18.     unsigned int hours;
  19.     unsigned int min;
  20.     unsigned int min_after_beg;
  21. } my_time;
  22.  
  23. int main(){
  24.     int avl_t = INCR;
  25.     int now_t = 0;
  26.     int controll_time;
  27.     my_time *time_arr = (my_time *)malloc(avl_t * sizeof(my_time));
  28.  
  29.     //Считывание
  30.     scanf("%i\n", &controll_time);
  31.     while(scanf("{%i:%i}", &time_arr[now_t].hours, &time_arr[now_t].min)){
  32.         now_t++;
  33.         if (now_t >= avl_t){
  34.             avl_t += INCR;
  35.             void *temp = realloc(time_arr, avl_t * sizeof(my_time));
  36.             if (temp)
  37.                 time_arr = (my_time *)temp;
  38.             else{
  39.                 printf("Ошибка перевыделения памяти!\n");
  40.                 return 0;
  41.             }
  42.             temp = NULL;
  43.         }
  44.     }
  45.  
  46.     //Обработка
  47.     int i;
  48.     //вычисляем кол-во минут после начала суток
  49.     for (i = 0; i < now_t; i++){
  50.         time_arr[i].min_after_beg = (HOURMIN * time_arr[i].hours) + time_arr[i].min;
  51.     }
  52.  
  53.     int k = 0; //счётчик искомых пар
  54.     for (i = 0; i < now_t; i++){
  55.         if (time_arr[i].min_after_beg > controll_time)
  56.             k++;
  57.     }
  58.  
  59.     printf("%i\n", k);
  60.  
  61.     return 0;
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement