#include #include #include #include #include "input.h" void parseIntegers(int n, int* a){ char str[n*10]; scanf("%s",str); for(int i=0;im;h++){ if(in->b[h]>in->t) return false; } //Check if the amount of time an obligation takes //is longer than its interval. for(int i=0;in;i++){ for(int j=0;jnI[i];j++){ if( in->I[i][j].p > in->I[i][j].d-in->I[i][j].r+1 ) return false; } } return true; } Input parser(){ Input r; scanf("%d",&(r.t)); scanf("%d",&(r.m)); r.b = malloc(sizeof(int)*r.m); parseIntegers(r.m, r.b); scanf("%d",&(r.n)); r.nI = malloc(sizeof(int)*r.n); r.I = malloc(sizeof(Obligation*)*r.n); for(int i=0;ib); for(int i=0;in;i++){ free(in->I[i]); free(in->socialMatrix[i]); } free(in->socialMatrix); free(in->I); free(in->nI); }