Unique Paths II

Title: Unique Paths II Source: leetcode.com Follow up for “Unique Paths”: Now consider if some obstacles are added to the grids. How many unique paths would there be? An obstacle and empty space is marked as 1 and 0 respectively in the grid. For example, There is one obstacle in the middle of a 3×3 ...

Rotate Image

Title: Rotate Image Source: leetcode.com You are given an n x n 2D matrix representing an image. Rotate the image by 90 degrees (clockwise). Follow up: Could you do this in-place? Java solution Java /* https://leetcode.com/problems/rotate-image/ */ class RotateImage { public static void main(String args[]) { int[][] image = { {1,2,3,4}, {5,6,7,8}, {9,10,11,12}, {13,14,15,16} }; ...

Bulls and Cows

Title: Bulls and Cows Source: leetcode.com You are playing the following Bulls and Cows game with your friend: You write down a number and ask your friend to guess what the number is. Each time your friend makes a guess, you provide a hint that indicates how many digits in said guess match your secret ...

Python newline caveat

Hello Everyone, This will be a small post about a caveat in Python language (v2.7) for writing output to files. On Windows the new line character is actually treated as ‘\r\n‘ or CRLF as we know it (Carriage Return followed by a Newline). Sometimes however you may not want to output this newline character into ...

Lexicographically Bigger String

The following piece of code accepts as input a single string of characters and produces on standard output a string which would be the next string to appear in lexicographical order. Definition of Lexicographical order : wiki (Also known as The Dictionary order since lexicographical order is one in which the strings would appear in ...

Check if a number is Fibonacci

A Fibonacci number is one which appears in the Fibonacci Sequence. To check if a given number n occurs in the Fibonacci Sequence or not we only need to check if one or both of (5*n^2 + 4) or (5*n^2 – 4) is a perfect square or not (source: wiki). Python code for the same: ...

Code Jam Cookie Clicker Alpha

This is a solution to the Code Jam 2014 Qualification Round problem B, Cookie Clicker Alpha. (Problem Description Link) Python __author__ = 'Coddicted' def read_case(inf): return inf.readline().split(' ') def write_case(f, i, res): f.write('Case #%d: '%i) f.write('%.7f'%res) f.write('\n') def main(): with open('data_files/B-large-practice.in', 'r') as inf, open('data_files/B-large-practice.out', 'w') as of: t = int(inf.readline()) case_cnt = 1 while ...

Code Jam Magic Trick

Code Jam Magic Trick
This is the solution to Code Jam 2014 qualification round problem A. Magic Trick. (Problem Link) Python __author__ = 'Coddicted' def read_row(inf):     return inf.readline().strip().split(' ') def main():     with open('data_files/A−small−practice.in', 'r') as inf, open('data_files/A−small−practice.out', 'w') as of:         t = int(inf.readline())         case_cnt = 1         while case_cnt <= t:             row = int(inf.readline())             i = 1             row1 = []             while i <= 4:                 if i == row:                     row1 = read_row(inf)                 else:                     inf.readline()                 i += 1             row = int(inf.readline())             row2 = []             i = 1             while i <= 4:                 if i == row:                     row2 = read_row(inf)                 else:                     inf.readline()                 i += 1             row1 = [int(item) for item in row1]             row2 = [int(item) for item in row2]             comm = [item for item in row1 if item in row2]             if len(comm) == 1:                 of.write('Case #' + str(case_cnt) + ': ' + str(comm[0]) + '\n')                 print 'Case #' + str(case_cnt) + ': ' + str(comm[0])             elif len(comm) > 1:                 of.write('Case #' + str(case_cnt) + ': ' + 'Bad magician!' + '\n')                 print 'Case #' + str(case_cnt) + ': ' + 'Bad magician!'             else:                 of.write('Case #' + str(case_cnt) + ': ' + 'Volunteer cheated!' + '\n')                 print 'Case #' + str(case_cnt) + ': ' + 'Volunteer cheated!' ...