Skip to main content

URI Problem 1025 Solution Where is the Marble? - URI Online Judge Solution


URI Online Judge Solution 1025 Where is the Marble? using Python Programming Language.

Raju and Meena love to play with Marbles. They have a lot of marbles with numbers written on them. In the beginning, Raju would place the marbles one after another in ascending order of the numbers written on them. Then, Meena would ask Raju to find the first marble with a certain number. She would count 1...2...3. Raju gets one point for correct answer, and Meena gets the point if Raju fails. After some fixed number of attempts, the game ends and the player with maximum points wins. Today it's your chance to play as Raju. Being a smart kid, you have in your advantage the computer. But don't underestimate Meena, she wrote a program to keep track how much time you're taking to give all the answers. So now you have to write a program, which will help you in your role as Raju.

Input

There can be multiple test cases. The total number of test cases is less than 65. Each test case consists begins with 2 integers: the number of marbles and the number of queries Meena would make. The next lines would contain the numbers written on the marbles. These marble numbers will not come in any particular order. Following lines will have queries. Be assured, none of the input numbers are greater than 10000 and none of them are negative.

Input is terminated by a test case where = 0 and = 0.

Output

For each test case output there must be a serial number of the test case. For each query, write one line of output. The format of this line will depend on whether the number is consulted or not written in one of the marbles.

The two different formats are described below:
'x found at y', if the first marble with number x was found at position y. Positions are numbered 1, 2,..., N.
'x not found', if the marble with number x is not present.
Input SampleOutput Sample
4 1
2
3
5
1
5
5 2
1
3
3
3
1
2
3
0 0
CASE# 1:
5 found at 4
CASE# 2:
2 not found
3 found at 3

Solution Using Python:

from bisect import bisect_left
def GetPosition(Num, arr):
index = (bisect_left(arr, Num))

if index < len(arr) and arr[index] == Num:
return index + 1
else:
return -1

Case = 1
while True:
N, Q = list(map(int, input().split()))
if N == 0 and Q == 0:
break

print("CASE# %d:" % Case)
Case += 1
List1 = []
for i in range(N + Q):
if i < N:
List1.append(int(input()))

if i == (N - 1):
List1.sort()

if i >= N:
Qvalue = int(input())
Position = GetPosition(Qvalue, List1)

if Position == -1:
print(str(Qvalue) + " not found")
else:
print(str(Qvalue) + " found at " + str(Position))

Comments

Popular posts from this blog

URI Problem 1001 Solution Extremely Basic - - URI Online Judge Solution

URI Online Judge Problem 1001 Extremely Basic Solution using C, Python Programming Language. Read 2 variables, named  A  and  B  and make the sum of these two variables, assigning its result to the variable  X . Print  X  as shown below. Print endline after the result otherwise you will get “ Presentation Error ”. Input The input file will contain 2 integer numbers. Output Print the letter  X  (uppercase) with a blank space before and after the equal signal followed by the value of X, according to the following example. Obs.: don't forget the endline after all. Samples Input Samples Output 10 9 X = 19 -10 4 X = -6 15 -7 X = 8 URI 1001 Solution in Python A = int(input()) B = int(input()) X = A + B print("X =",X); URI 1001 Solution in C: #include int main() { int A,B,X; scanf ("%d %d", &A, &B); X=A+B; printf("X = %d\n",X); return 0; }

URI Problem 1179 Solution Array Fill IV - URI Online Judge Solution

URI Online Judge Solution 1179 Array Fill IV  Using C, Python Programming Language. In this problem you need to read 15 numbers and must put them into two different arrays: par if the number is even or impar if this number is odd. But  the size of each of the two arrrays is only 5 positions. So every time you fill one of two arrays, you must print the entire array to be able to use it again for the next numbers that are read. At the end, all remaining numbers of each one of these two arrays must be printed beginning with the odd array. Each array can be filled how many times are necessary. Input The input contains 15 integer numbers. Output Print the output like the following example. Input Sample Output Sample 1 3 4 -4 2 3 8 2 5 -7 54 76 789 23 98 par[0] = 4 par[1] = -4 par[2] = 2 par[3] = 8 par[4] = 2 impar[0] = 1 impar[1] = 3 impar[2] = 3 impar[3] = 5 impar[4] = -7 impar[0] = 789 impar[1] = 23 par[0] = 54 par[1] = 76 par[2] = 98 Solution Using C: #include <stdi...

URI Problem 1186 Solution Below the Secundary Diagonal - URI Online Judge Solution

URI Online Judge Solution 1186 Below the Secundary Diagonal   Using C, Python Programming Language. Read an uppercase character that indicates an operation that will be performed in an array M[12][12]. Then, calculate and print the sum or average considering only that numbers that are below of the Secundary diagonal of the array, like shown in the following figure (green area). Input The first line of the input contains a single uppercase character O ('S' or 'M'), indicating the operation Sum or Average (Média in portuguese) to be performed with the elements of the array. Follow 144 floating-point numbers of the array. Output Print the calculated result (sum or average), with one digit after the decimal point. Input Sample Output Sample S 5.0 0.0 -3.5 2.5 4.1 ... 12.6 Solution Using C: #include <stdio.h> int main() {     double a=0.0, M[12][12];     char T[2];     int x,y,c=0;     scanf("%s", &T);     for(x=0;x<=1...