I didn’t knew that this contest existed! 😀 Well, found it on the front page, looking to be solved, so, let’s go! Its summary:

You receive a **credit** `C`

at a local store and would like **to buy two items**. You first walk through the store and **create a list **`L`

** of all available items**. From this list you would like to **buy two items that add up to the entire value of the credit**. The solution you provide will consist of the two integers indicating the positions of the items in your list (**smaller number** **first**).

It’s quite simple, and by **smaller number first**, they mean the position of the items, not its value. From that, the solution is trivial (already validated for the inputs):

for case in range(1,int(raw_input())+1): # For all test cases
credit = int(raw_input()) # Get the test's credit
raw_input() # Discard the number of items
strItems = raw_input().split(" ") # Get the items as strings
items = []
for item in strItems:
items.append(int(item)) # Convert the items to integers
out = False
i = 0
j = i+1
for i in range(0,len(items)-1): # first item can be any of the items, but the last
for j in range(i+1,len(items)): # the second will be any of the items after the first
if items[i] + items[j] == credit:
out = True # Found, get out
break
if out: break
print "Case #%d: %d %d" % (case, i+1, j+1)# Reports results

Pretty easy! 😀 See you next post!

### Like this:

Like Loading...

*Related*