Hello coders, In this post, you will learn how to solve the **Dynamic Array in C Hacker Rank Solution**. This problem is a part of the **HackerRank C Programming** Series.

We also provide Hackerrank solutions in C++, Java programming, and Python Programming languages so whatever your domain we will give you an answer in your field.

You can practice and submit all HackerRank problem solutions in one place. Find a solution for other domains and Sub-domain. I.e. Hacker Rank solution for HackerRank C Programming, HackerRank C++ Programming, HackerRank Java Programming, HackerRank Python Programming, HackerRank Linux Shell, HackerRank SQL Programming, and HackerRank 10 days of Javascript.

As you already know that this site does not contain only the Hacker Rank solutions here, you can also find the solution for other problems. I.e. Web Technology,Data Structures, RDBMS Programs, Java Programs Solutions, Fiverr Skills Test answers, Google Course Answers, Linkedin Assessment, and Coursera Quiz Answers.

## Dynamic Array in C Hacker Rank Solution

### Problem

Snow Howler is the librarian at the central library of the city of HuskyLand. He must handle requests which come in the following forms:

1 x y : Insert a book with * y* pages at the end of the

*shelf.*

**xth**2 x y : Print the number of pages in the

*book on the*

**yth***shelf.*

**xth**3 x : Print the number of books on the

*shelf.*

**xth**Snow Howler has got an assistant, Oshie, provided by the Department of Education. Although inexperienced, Oshie can handle all of the queries of types 2 and 3.

Help Snow Howler deal with all the queries of type 1.

Oshie has used two arrays:

int* total_number_of_books; /* * This stores the total number of books on each shelf. */int** total_number_of_pages; /* * This stores the total number of pages in each book of each shelf. * The rows represent the shelves and the columns represent the books. */

**Input Format :**

The first line contains an integer total_number_of_shelves, the number of shelves in the library. The second line contains an integer total_number_of_queries, the number of requests.

Each of the following total_number_of_queries lines contains a request in one of the three specified formats.

**Constraints :**

- 1<= total_number_of_shelves <= 10^5
- 1<= total_number_of_queries <= 10^5
- For each query of the second type, it is guaranteed that a book is present on the xth shelf at yth index.
- 0 <= x < total_number_of_shelves
- Both the shelves and the books are numbered starting from 0.
- Maximum number of books per shelf <= 1100

**Output Format :**

Write the logic for the requests of type 1. The logic for requests of types 2 and 3 are provided.

### Sample Input 0 :

5510151020127822030

### Sample Output 0 :

782

### Explanation 0 :

There are 5 shelves and 5 requests, or queries.

– 1 Place a 15 page book at the end of shelf 0.

– 2 Place a 20 page book at the end of shelf 0.

– 3 Place a 78 page book at the end of shelf 2.

– 4 The number of pages in the 0th book on the 2th shelf is 78.

– 5 The number of books on the 0th shelf is 2.

### Dynamic Array in C Hacker Rank Solution

#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; int main() { int total_number_of_shelves; scanf("%d", &total_number_of_shelves); total_number_of_books = calloc(total_number_of_shelves, sizeof(int)); int total_number_of_queries; scanf("%d", &total_number_of_queries); total_number_of_pages = malloc(total_number_of_shelves * sizeof(int *)); for (int i = 0; i < total_number_of_shelves; i++) { total_number_of_pages[i] = calloc(1100, sizeof(int)); } while (total_number_of_queries--) { int type_of_query; scanf("%d", &type_of_query); if (type_of_query == 1) { /* * Process the query of first type here. */ int shelf, pages; scanf("%d %d", &shelf, &pages); total_number_of_books[shelf]++; int *book = total_number_of_pages[shelf]; while (*book != 0) book++; *book = pages; } else if (type_of_query == 2) { int x, y; scanf("%d %d", &x, &y); printf("%d\n", *(*(total_number_of_pages + x) + y)); } else { int x; scanf("%d", &x); printf("%d\n", *(total_number_of_books + x)); } } if (total_number_of_books) { free(total_number_of_books); } for (int i = 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); } return 0; }

**Disclaimer: **The above Problem **(Dynamic Array in C )** is generated by **Hackerrank** but the Solution is Provided by **Chase2Learn**. This tutorial is only for Educational and Learning purposes. Authority if any of the queries regarding this post or website fill the following contact form thank you.

### FAQ:

#### Is HackerRank good for C?

HackerRank**HackerRank offers you to solve these programming challenges in any of various programming languages such as C, Java, Python, Ruby, etc**. Apart from this, participants can solve the problems in various computer science domains like algorithms, machine learning, and artificial intelligence.

#### What is meant by HackerRank?

HackerRank is a tech company that focuses on competitive programming challenges for both consumers and businesses. Developers compete by writing programs according to provided specifications. Wikipedia

#### Is HackerRank good for beginners?

**HackerRank is very good for beginners** so even if you want to print your first program “Hello World!” then definitely HackerRank gives this opportunity to you. It has a pretty good UI with boilerplate code pre-written that helps beginners to start competitive coding.

#### What is C programming in simple words?

C is a general-purpose computer programming language. It was created in the 1970s by Dennis Ritchie, and remains very widely used and influential. By design, C’s features cleanly reflect the capabilities of the targeted CPUs. Wikipedia

#### Where can I find HackerRank solutions in C?

in this post you will get all the *solutions* of *HackerRank C* Problems.

Finally, we are now, in the end, I just want to conclude some important message for you

**Note:-** I compile all programs, if there is any case program is not working and showing an error please let me know in the comment section. If you are using adblocker, please disable adblocker because some functions of the site may not work correctly.

Please share our posts on social media platforms and also suggest to your friends to Join Our Groups. Don’t forget to subscribe.