[pyar] Respuestas Quizz DevFest
Sebastian Bassi
sebastian.bassi en globant.com
Lun Oct 18 11:51:10 ART 2010
2010/10/13 Gonzalo Larralde <gonzalolarralde en gmail.com>
> Estuvieron viendo la Quizz para anotarse al DevFest?
>
Si.
Se les ocurre como acortarla mas aún? Ahora está en 130 chars.
> C: len([i for i in range(1799,5626) if i % 2 == 0 and i % 3 == 0])
> D: len([i for i in range(18093, 35130) if not "9" in str(i) or "4" in
> str(i)])
> E: len([i for i in map(list,a.split()) if not False in [reduce(lambda
> x,y: x and y!=x and y,i), i[0]!=i[-1], sum(map(int,i))%2==0]])
En mi caso hice versiones largas, como si compitiese en el otro sentido:
def evenn(n):
if n%2==0:
return True
else:
return False
def div5(n):
if n%5==0:
return True
else:
return False
def noconsecutivos(n):
ant = str(n)[0]
for x in str(n)[1:]:
if x == ant:
return False
else:
ant = x
return True
def sumaevenn(n):
suma = sum(map(int,list(str(n))))
if evenn(suma):
return True
else:
return False
def primerodistintoultimo(n):
if str(n)[0] != str(n)[-1]:
return True
else:
return False
primerodistintoultimo(1223)
primerodistintoultimo(1221)
tot = 0
for x in range(1915,4382):
if evenn(x) and div5(x):
tot += 1
#print tot
tot = 0
for x in range(14089 and 28858):
if "2" in str(x) and "7" not in str(x):
tot += 1
#print x
# leo numeros:
f = open("numeros.txt")
nums = []
for line in f:
nums.append(line.replace("\n",""))
validos = 0
for x in nums:
if noconsecutivos(x) and sumaevenn(x) and primerodistintoultimo(x):
#print x
validos += 1
print len(nums)
print validos
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20101018/de41bac2/attachment.html>
More information about the pyar
mailing list