Click here to Skip to main content
14,643,391 members
Rate this:
Please Sign up or sign in to vote.
Juan Marquinho is a geologist and he needs to count rock samples in order to send it to a chemical laboratory. He has a problem: The laboratory only accepts rock samples by a range of its size in ppm (parts per million).

Juan Marquinho receives the rock samples one by one and he classifies the rock samples according to the range of the laboratory. This process is very hard because the number of rock samples may be in millions.

Juan Marquinho needs your help, your task is to develop a program to get the number of rocks in each of the ranges accepted by the laboratory.

Input Format:
An positive integer S (the number of rock samples) separated by a blank space, and a positive integer R (the number of ranges of the laboratory); A list of the sizes of S samples (in ppm), as positive integers separated by space R lines where the ith line containing two positive integers, space separated, indicating the minimum size and maximum size respectively of the ith range.

Output Format:
R lines where the ith line containing a single non-negative integer indicating the number of the samples which lie in the ith range.

Constraints: 10 ? S ? 10000 1 ? R ? 1000000 1?size of each sample (in ppm) ? 1000

Example 1

Input: 10 2

345 604 321 433 704 470 808 718 517 811

300 350

400 700

Output: 2 4

There are 10 samples (S) and 2 ranges ( R ). The samples are 345, 604,811. The ranges are 300-350 and 400-700. There are 2 samples in the first range (345 and 321) and 4 samples in the second range (604, 433, 470, 517). Hence the two lines of the output are 2 and 4

Example 2

Input: 20 3

921 107 270 631 926 543 589 520 595 93 873 424 759 537 458 614 725 842 575 195

1 100

50 600

1 1000

Output: 1 12 20

There are 20 samples and 3 ranges. The samples are 921, 107 195. The ranges are 1-100, 50-600 and 1-1000. Note that the ranges are overlapping. The number of samples in each of the three ranges are 1, 12 and 20 respectively. Hence the three lines of the output are 1, 12 and 2

What I have tried:

i am not getting any idea..pls help me
Updated 5-Aug-20 1:18am
F-ES Sitecore 5-Aug-20 6:20am
Not only are you just wanting other people to do your work for you, you can't even be bothered to tell people what language you're using so how can anyone possibly help you even if we did want to do your homework for you?
Rate this:
Please Sign up or sign in to vote.

Solution 1

We are more than willing to help those that are stuck: but that doesn't mean that we are here to do it all for you! We can't do all the work, you are either getting paid for this, or it's part of your grades and it wouldn't be at all fair for us to do it all for you.

So we need you to do the work, and we will help you when you get stuck. That doesn't mean we will give you a step by step solution you can hand in!
Start by explaining where you are at the moment, and what the next step in the process is. Then tell us what you have tried to get that next step working, and what happened when you did.

If you are completely stuck, grab a pencil and some paper, and follow the instructions yourself to get a good idea what is supposed to happen. When you understand that properly, you can start working out the data structures you will need and the processes you will need to apply to them, then begin coding an application.
Rate this:
Please Sign up or sign in to vote.

Solution 2

When you take a problem from a challenge site, it is a good idea to say it and give link:
i am not getting any idea..pls help me

Those callenges are always about crafting an ad-hoc algorithm for the problem.
The first step is to solve the problem by hand with a small dataset.
Start brute force, then refine the algorithm, then take a bigger dataset to check if it still works.
Last step is to translate manual algorithm to code.

Usually, those challenges are about testing your knowledge in algorithms and data structures.
Richard Deeming 5-Aug-20 6:40am
"... an haddock algorithm ..."
That sounds a bit fishy to me! :)

(I suspect that should be "ad-hoc".)
Patrice T 5-Aug-20 6:44am
My bad, thank you.
Rate this:
Please Sign up or sign in to vote.

Solution 3

At first you must decide in which language you want to develop. Maybe you a preferred language or your teacher told you to use some special language. Search in the internet for some tutorials and some IDE like Visual Studio or Eclipse.

Than the task is more simple to write an decision logic in code, which checks the input and produces the output.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100