This code would run a lot faster as a hash table look up.
This joke was not written by the dude pictured. The author wrote a book of funny code jokes.
Y’all laugh but this man has amazing code coverage numbers.
Can you imagine being a TA and having to grade somebody’s hw and you get this first thing? lmao
def is_even(n: int) -> bool: if n < 0: return is_even(-n) r = True for _ in range(n): r = not r return r
To be fair, the question is “Write a function that simultaneously determines if the number is even and works as a timer”
This is YandereDev levels of bad.
this is yanderedev.
pro hacker tip: you can optimize this by using “num” for the variable name instead of “number”
I prefer the cryptic each variable gets a single letter of the alphabet.
Plot twist: they used a script to generate that code.
def even(n: int) -> bool: code = "" for i in range(0, n+1, 2): code += f"if {n} == {i}:\n out = True\n" j = i+1 code += f"if {n} == {j}:\n out = False\n" local_vars = {} exec(code, {}, local_vars) return local_vars["out"]
scalable version
Not even else if? Damn, I guess we’re checking all the numbers every time then. This is what peak performance looks like
O(1) means worst and best case performance are the same.
You don’t get it, it runs on a smart fridge so there’s no reason to change it
- a smart fridge’s monitor
I hope that the language’s
int
s are at most 32 bits. For 8 bits it could even be written by hand & the source code for a 32 bit version would only take upavg_line_len * 4GiB
space for the source code of the function. But it might take a bit of time to compile a version that supports the full range of 64 or 128 bit ints.My mate, Paul, says all numbers after 700 repeat so we can stop there.
We just give them different names so you think they’re going up.
all you have to to is throw an exception if the number is bigger than 100, who even needs numbers that big anyways?
The end user yearns for their machine to be utilized fully, so instead of that, you can import full deepseek model to do the task
I’ll join in
const isEven = (n) => !["1","3","5","7","9"] .includes(Math.round(n).toString().slice(-1))
I’ve actually written exactly that before, when I needed to check the lowest bit in an SQL dialect with no bitwise operators. It was disgusting and awesome.
bool isEven(int value) { return (int)(((double)value / 2.0) % 1.0) * 100) != 50; }