- プログラミングのお題スレ Part5
671 :デフォルトの名無しさん[sage]:2014/11/03(月) 17:13:42.69 ID:hmgWhyGC - >>667 Python
def f(h): print "\n".join([(("_"*(2**(i+1)-1) + "@")*(2**(h-i-1)))[2**i:] for i in reversed(range(h))])
| - プログラミングのお題スレ Part5
673 :デフォルトの名無しさん[sage]:2014/11/03(月) 17:27:29.18 ID:hmgWhyGC - >>646,648 Python
def f(s): a = [i for i in (3,4) if not len(s) % i] if not a: return k = len(s) // min(a) print s, "->", [s[i:i+k] for i in range(0, len(s), k)] f("abcdef") f("abcdefg") f("abcdefgh") --- abcdef -> ['ab', 'cd', 'ef'] abcdefgh -> ['ab', 'cd', 'ef', 'gh']
| - プログラミングのお題スレ Part5
679 :デフォルトの名無しさん[sage]:2014/11/03(月) 19:41:30.72 ID:hmgWhyGC - >>674 Python
def f(m): if not m % 3: return L, M = [], [] x = m while x > 1: M.append(x) p, r = divmod(x + 1, 3) if r == 0 and p % 3 and p not in M: x = p L.append("b") else: x = x * 2 L.append("a") print "m={} -> {}".format(m, "".join(reversed(L))) for m in (10,4,67,175,809): f(m) --- m=10 -> bbbaba m=4 -> bbbabbbaaaabaaa m=67 -> bbbababbababbaabaabaabbaabaaa m=175 -> bbbababbabaaaaabbabbaabaaabababbabbaaababbaabaaa m=809 -> bbbababbabaaaaabbaabbbbaaabbaaababbbaaababbaabaabaa
|
|