from __future__ import generators
def xcombinations(items, n):
if n==0: yield []
else:
for i in range(len(items)):
for cc in xcombinations(items[:i]+items[i+1:],n-1):
yield [items[i]]+cc
def xpermutations(items):
return xcombinations(items, len(items))
if __name__=='__main__':
'''
for p in xpermutations(['0','1','2','3']):
print (''.join(p))
'''
arr = xpermutations(['0','1','2','3'])
print('indices[24][4]={')
for item in arr:
form = '{%s,%s,%s,%s},' % (item[0], item[1], item[2], item[3])
print(form)
print('}')
compatible with python 3.x+
원문
내 사이즈는 87바이트. 포럼을 보니 파스칼 삼각형을 이용하는 방법도 있는것 같은데. 1등은 39바이트. 내 코드의 반도 안된다. 어떻게한거지?
1바이트를 줄여 86바이트가 되었다.
def c(t):
s=1
for i in range(1,t[1]+1):
s=s*(t[0]-i+1)/i
print s
c(input())
s=1
for i in range(1,t[1]+1):
s=s*(t[0]-i+1)/i
print s
c(input())
내 사이즈는 87바이트. 포럼을 보니 파스칼 삼각형을 이용하는 방법도 있는것 같은데. 1등은 39바이트. 내 코드의 반도 안된다. 어떻게한거지?
def c(t,s):
for i in range(1,t[1]+1):
s=s*(t[0]-i+1)/i
print s
c(input(),1)
for i in range(1,t[1]+1):
s=s*(t[0]-i+1)/i
print s
c(input(),1)
1바이트를 줄여 86바이트가 되었다.
링크
첫 번째 코드 : 290바이트. 전체 61위 (2008.12.12. 오전 10시 현재)
- 출력되는 시계모양을 정의하는 코드사이즈를 줄이는데 치중했음
- 시계모양의 텍스트에서 어떤 패턴을 발견하면 더 줄일 수 있지 않을까 생각중.
첫 번째 코드 : 290바이트. 전체 61위 (2008.12.12. 오전 10시 현재)
s=' '
o='o'
n='\n'
c=[s*8,o,n,s*4,o,s*7,o,n,n,s,o,s*13,o,n,n,o,s*15,o,n,n,s,o,s*13,o,n,n,s*4,o,s*7,o,n,s*8,o]
i=[1,6,12,17,23,29,32,27,21,15,10,4]
a = raw_input().split(':')
h=i[int(a[0])%12]
m=i[int(a[1])/5]
c[h]='h'
if h==m:c[m]='x'
else: c[m]='m'
print ''.join(k for k in c)
o='o'
n='\n'
c=[s*8,o,n,s*4,o,s*7,o,n,n,s,o,s*13,o,n,n,o,s*15,o,n,n,s,o,s*13,o,n,n,s*4,o,s*7,o,n,s*8,o]
i=[1,6,12,17,23,29,32,27,21,15,10,4]
a = raw_input().split(':')
h=i[int(a[0])%12]
m=i[int(a[1])/5]
c[h]='h'
if h==m:c[m]='x'
else: c[m]='m'
print ''.join(k for k in c)
- 출력되는 시계모양을 정의하는 코드사이즈를 줄이는데 치중했음
- 시계모양의 텍스트에서 어떤 패턴을 발견하면 더 줄일 수 있지 않을까 생각중.

Prev
Rss Feed