We use cookies to ensure you have the best browsing experience on our website. Please read our cookie policy for more information about how we use cookies.
#include<stdio.h>#include<stdlib.h>/* * This stores the total number of books in each shelf. */int*total_number_of_books;/* * This stores the total number of pages in each book of each shelf. * The rows represent the shelves and the columns represent the books. */int**total_number_of_pages;intmain(){inttotal_number_of_shelves;scanf("%d",&total_number_of_shelves);// Initialize memory for total_number_of_bookstotal_number_of_books=(int*)calloc(total_number_of_shelves,sizeof(int));// Initialize memory for total_number_of_pagestotal_number_of_pages=(int**)calloc(total_number_of_shelves,sizeof(int*));inttotal_number_of_queries;scanf("%d",&total_number_of_queries);while(total_number_of_queries--){inttype_of_query;scanf("%d",&type_of_query);if(type_of_query==1){/* * Process the query of first type here. * This query is to add books to a shelf. */intx,y;scanf("%d %d",&x,&y);// Increase the number of books on the shelf*(total_number_of_books+x)+=1;// Reallocate memory for the shelf if necessaryif(*(total_number_of_books+x)==1){*(total_number_of_pages+x)=(int*)malloc(sizeof(int));}else{*(total_number_of_pages+x)=(int*)realloc(*(total_number_of_pages+x),(*(total_number_of_books+x))*sizeof(int));}// Add the number of pages of the new book*(*(total_number_of_pages+x)+(*(total_number_of_books+x)-1))=y;}elseif(type_of_query==2){intx,y;scanf("%d %d",&x,&y);printf("%d\n",*(*(total_number_of_pages+x)+y));}else{intx;scanf("%d",&x);printf("%d\n",*(total_number_of_books+x));}}if(total_number_of_books){free(total_number_of_books);}for(inti=0;i<total_number_of_shelves;i++){if(*(total_number_of_pages+i)){free(*(total_number_of_pages+i));}}if(total_number_of_pages){free(total_number_of_pages);}return0;}
Cookie support is required to access HackerRank
Seems like cookies are disabled on this browser, please enable them to open this website
Dynamic Array in C
You are viewing a single comment's thread. Return to all comments →