Partition deepmind directory into two parts
Since I did not pass my one-site interview with DM, but I have been invited to attempt again, I decided to partition this directory into two parts: 1. part_one: Hosting the exercises that I completed before my first attempt at earning the job. 2. part_two: Hosting the exercise that I will complete before my second attempt at earning the job.
This commit is contained in:
		
							parent
							
								
									b4dd290745
								
							
						
					
					
						commit
						5df3bb4e40
					
				
					 12 changed files with 57 additions and 0 deletions
				
			
		|  | @ -1,51 +0,0 @@ | |||
| def get_max_profit(xs): | ||||
|     best_profit = xs[1] - xs[0] | ||||
|     lowest_buy = xs[0] | ||||
| 
 | ||||
|     for x in xs[1:]: | ||||
|         best_profit = max(best_profit, x - lowest_buy) | ||||
|         lowest_buy = min(lowest_buy, x) | ||||
|     return best_profit | ||||
| 
 | ||||
| 
 | ||||
| # Tests | ||||
| 
 | ||||
| import unittest | ||||
| 
 | ||||
| 
 | ||||
| class Test(unittest.TestCase): | ||||
|     def test_price_goes_up_then_down(self): | ||||
|         actual = get_max_profit([1, 5, 3, 2]) | ||||
|         expected = 4 | ||||
|         self.assertEqual(actual, expected) | ||||
| 
 | ||||
|     def test_price_goes_down_then_up(self): | ||||
|         actual = get_max_profit([7, 2, 8, 9]) | ||||
|         expected = 7 | ||||
|         self.assertEqual(actual, expected) | ||||
| 
 | ||||
|     def test_price_goes_up_all_day(self): | ||||
|         actual = get_max_profit([1, 6, 7, 9]) | ||||
|         expected = 8 | ||||
|         self.assertEqual(actual, expected) | ||||
| 
 | ||||
|     def test_price_goes_down_all_day(self): | ||||
|         actual = get_max_profit([9, 7, 4, 1]) | ||||
|         expected = -2 | ||||
|         self.assertEqual(actual, expected) | ||||
| 
 | ||||
|     def test_price_stays_the_same_all_day(self): | ||||
|         actual = get_max_profit([1, 1, 1, 1]) | ||||
|         expected = 0 | ||||
|         self.assertEqual(actual, expected) | ||||
| 
 | ||||
|     def test_error_with_empty_prices(self): | ||||
|         with self.assertRaises(Exception): | ||||
|             get_max_profit([]) | ||||
| 
 | ||||
|     def test_error_with_one_price(self): | ||||
|         with self.assertRaises(Exception): | ||||
|             get_max_profit([1]) | ||||
| 
 | ||||
| 
 | ||||
| unittest.main(verbosity=2) | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue