Skip to content

Instantly share code, notes, and snippets.

View voith's full-sized avatar
👨‍🎓
Building on top of Ethereum

Voith voith

👨‍🎓
Building on top of Ethereum
View GitHub Profile
@voith
voith / README.md
Last active March 17, 2018 13:58
Basic Mqtt test

** setup

  1. Install python2
  2. Install paho-mqtt libtray: pip install paho-mqtt
  3. Download all three python files in the gist and store them in the same directory:
  4. To run the subscriber run python mqtt_subscriber.py
  5. To run the publisher run python mqtt_publisher.py

Keybase proof

I hereby claim:

  • I am voith on github.
  • I am voith26 (https://keybase.io/voith26) on keybase.
  • I have a public key ASBoESSGBKFWMQJ8TaZXGLodnYqy2U-0TkYCKHZnHxDlBwo

To claim this, I am signing this object:

#Install on the system
pip3 install epdb
# Set in the code
import epdb; epdb.serve()
# Connect to the debugger
python3 -c 'import epdb; epdb.connect()'
@voith
voith / script.sh
Created August 21, 2019 12:08
Readline fix for version 7 on OSX
# I use py-env to handle different python versions.
# When I installed python3.7 the `libreadline.7.dylib` image went missing.
# the fix was to create a softlink of the new dylib
ln -s /usr/local/opt/readline/lib/libreadline.8.0.dylib /usr/local/opt/readline/lib/libreadline.7.dylib
import asyncio
import json
import websockets
from web3.providers import WebsocketProvider
class CustomWebsocketProvider(WebsocketProvider):
@voith
voith / sieve_of_eratosthenes.py
Last active October 21, 2019 17:44
sum of first 2000000 prime numbers
"""
sum of first 2000000 prime numbers
output: 142913828922
"""
num = 2000000
sieve = [True] * num
sieve[0] = False
i = 2
while (i * i <= num):
@voith
voith / matrix_adjacent_product.py
Created October 22, 2019 10:16
Greatest product of four adjacent numbers in the same direction (up, down, left, right, or diagonally) in the 20×20 grid?
matrix = [
[8, 2, 22, 97, 38, 15, 0, 40, 0, 75, 4, 5, 7, 78, 52, 12, 50, 77, 91, 8],
[49, 49, 99, 40, 17, 81, 18, 57, 60, 87, 17, 40, 98, 43, 69, 48, 4, 56, 62, 0],
[81, 49, 31, 73, 55, 79, 14, 29, 93, 71, 40, 67, 53, 88, 30, 3, 49, 13, 36, 65],
[52, 70, 95, 23, 4, 60, 11, 42, 69, 24, 68, 56, 1, 32, 56, 71, 37, 2, 36, 91],
[22, 31, 16, 71, 51, 67, 63, 89, 41, 92, 36, 54, 22, 40, 40, 28, 66, 33, 13, 80],
[24, 47, 32, 60, 99, 3, 45, 2, 44, 75, 33, 53, 78, 36, 84, 20, 35, 17, 12, 50],
[32, 98, 81, 28, 64, 23, 67, 10, 26, 38, 40, 67, 59, 54, 70, 66, 18, 38, 64, 70],
[67, 26, 20, 68, 2, 62, 12, 20, 95, 63, 94, 39, 63, 8, 40, 91, 66, 49, 94, 21],
[24, 55, 58, 5, 66, 73, 99, 26, 97, 17, 78, 78, 96, 83, 14, 88, 34, 89, 63, 72],
@voith
voith / no_of_prime_factors.py
Created October 22, 2019 21:48
First triangle number to have over five hundred divisors
from collections import defaultdict
from math import sqrt
def number_prime_factors(n):
factors = defaultdict(int)
while(n % 2 == 0):
factors[2] += 1
n = n // 2
@voith
voith / maximum_path_sum.py
Created November 5, 2019 09:22
find maximum sum in a triangle of numbers while moving from top to bottom
arr = [
[75],
[95, 64],
[17, 47, 82],
[18, 35, 87, 10],
[20, 4, 82, 47, 65],
[19, 1, 23, 75, 3, 34],
[88, 2, 77, 73, 7, 63, 67],
[99, 65, 4, 28, 6, 16, 70, 92],
[41, 41, 26, 56, 83, 40, 80, 70, 33],
@voith
voith / no_sundays.py
Created November 5, 2019 13:03
Calculate number of Sundays that fell on the first of the month during the twentieth century.
def check_if_leap_year(year: int) -> bool:
if (
year % 4 == 0 and year % 100 != 0
) or (
year % 400 == 0
):
return True
else:
return False