2012-01-01から1年間の記事一覧

Project Euler 6(Ruby 0.000064s)

require "benchmark" def Euler6() total1 = 0 total2 = 0 100.times do |i| total1 += (i + 1) ** 2 total2 += i + 1 end total2 = total2 ** 2 p total2 - total1 end puts Benchmark::CAPTION puts Benchmark.measure{ Euler6() }

Project Euler 47(python 2.123701s)

#-*- coding:utf-8 -*- from datetime import datetime #約数を求めるアルゴリズム def factorize(x): counter = 0 List = [] while (x >= 4) and x % 2 == 0: x /= 2 List.append(2) d = 3 q = x / d while (q >= d): if (x % d == 0): x = q List.append(d…

未定

def Pra_17(): List = [str(i) for i in xrange(10)] b = [] for i in xrange(10000, 100000): a = sorted(list(str(i ** 2))) if len(a) == 10: if a == List: b.append(i) return b

『言語学入門講義』予告的な何か(がんばれおれ)

最近、けいさん(@kei_ex)さんから、「ソシュールとピンカーの違いが...」 (よく憶えてません。)と質問されたのですが、ソシュールについてまったく もって記憶がなくなっていたのと、言語学について入門したいと思い ちょっと簡単にまとめてみようと思いま…

「スマリヤン決定風脳の論理パズル」-ゲーデルの定理と様相論理-14章 さらに整合性のジレンマについて

前提問題 1. ある推論者が、自分が不整合であると信じているとする。 彼は不正確でなければならないだろうか。 [解答] 彼は不整合であると信じている。 これが真だとする。であれば、彼はB⊥であることを信じる。 また、彼はB⊥であることなる。したがって、不…

Project Euler 63(python 0.000632)

#-*- coding:utf-8 -*- import math from datetime import datetime def Euler63(): count = 0 dim = 1 while (math.log10(9 ** dim) < dim) & (math.log10(9 ** dim) >= (dim -1)): for i in xrange(1,10): if (math.log10(i ** dim) < dim) & (math.log10(…

ルース・アーロン・ペア(Python, C)

素因数の和が互いに等しい、差が1の自然数の組をルース・アーロン・ペアと呼ぶ。 20000以下には26組しかない。#素因数分解を原始的な方法で解く def prime_desolve(n): List = [] i = 2 while n > 1: if n % i == 0: while n % i == 0: List.append(…

ハーディ・ラマヌジャン数(Python, C)

ある4桁の自然数は、2つの数の立方体(三乗)の和として表す方法が2通りある最小の数である。 def Pra_13(): List = [] for i in xrange(1, 22): for j in xrange(i, 22): total = i **3 + j ** 3 if total in List: return total break else: List.append…

「あなたの人生の物語」

「顔の美醜について」 顔の美醜についての判断ができなくなる技術”カリー”が存在する世界を描いた ドキュメンタリーな小説。カリーは脱着可能な技術のようで、子供にカリーを 埋め込むことで”顔に関するトラブルを軽減”することが目的として導入されて いる…

Euler project(Python 0.000543)

wikipedia: 連分数の性質からすぐ求めることができる。 import math from datetime import datetime def Euler65(): P = [1, 2] A = [2, 1] count = 1 for i in xrange(3,101): if i % 3 == 0: A.append(2 * count) count += 1 else: A.append(1) for i in x…

Euler project 4(Python 0.018538s)

昔書いたけど糞コードだったので。 #-*- coding:utf-8 -*- from datetime import datetime def Pali_judge(x): x = list(str(x)) length = len(x) right = x[:length/2] if length % 2 == 1: left = x[ length/2 + 1:] else: left = x[ length/2: ] left = l…

Euler project(Python 1.717464s)

#-*- coding:utf-8 -*- import random from datetime import datetime #素数判定 def is_prime3(q,k=50): q = abs(q) if q == 2: return True if q < 2 or q&1 == 0: return False d = (q-1)>>1 while d&1 == 0: d >>= 1 for i in xrange(k): a = random.ran…

「スマリヤン決定風脳の論理パズル」-ゲーデルの定理と様相論理-11章 自分自身について推論する論理学者(その2)

整合 ある推論者が信じる、そして信じるであろうすべての命題の集合が整合である場合、 その推論者を整合である呼ぶ。不整合 信念の集合が不整合な推論者は、不整合である。 任意の1型論者について、その人の信念の集合は論理的に閉じている。 以下の条件は…

Euler project57(Python 0.003015)

It is possible to show that the square root of two can be expressed as an infinite continued fraction. (2の平方根は無限連分数として表すことができる。) 2 = 1 + 1/(2 + 1/(2 + 1/(2 + ... ))) = 1.414213... By expanding this for the first four…

Euler project55(Python 0.568505)

#-*- coding:utf-8 -*- from datetime import datetime def Pali_judge(x): x = list(str(x)) length = len(x) right = x[:length/2] if length % 2 == 1: left = x[length/2 + 1:] else: left = x[length/2:] left = left[::-1] if right == left: return T…

Euler project 52(Python 0.087561)

問題から導きだされる条件 1. 1x, 2x, 3x, 4x, 5x, 6xが全て同じ桁になるとき、一番大きな桁は1である。 (二番目に大きな桁は6以下だがここでは無視できる。) 2. 一番大きな桁は、2番目に大きな桁は繰り上がりの影響で最低6種類になる。 つまり、6桁以…

Euler project 53

#-*- coding:utf-8 -*- from datetime import datetime def Comb(n, r, list): return list[n]/(list[n-r] * list[r]) def Euler53(): list = [1, 1] for x in xrange(2,101): list.append(x * list[-1]) counter = 0 for i in xrange(23, 101): for j in xr…

Euler project 32

#-*- coding:utf-8 -*- from datetime import datetime def Euler32(): Number = set([str(i) for i in xrange(1,10)]) total = [] for i in xrange(1, 98): for j in xrange(12, 9876): max = i *j if max > 9999: break Num_list = list(str(i)) + list(st…

「スマリヤンの決定不能の論理パズル」-ゲーデルの定理と様相論理-11章 自分自身について推論する論理学者

1型推論者 (1a)すべての恒真式を信じている。 (1b)もし彼がpとp→qを信じれば、qを信じる。2型推論者 1型推論者の能力とともに以下の能力を持っている。 (2)(Bp&B(p→q))→Bpを信じる 3型推論者 2型推論者の能力とともに以下の能力を持っている。 (3)もし…

Hornerの方法(C言語によるはじめてのアルゴリズム入門)

Hornerの方法 多項式の値を求める。 を次のように変換できる以下は、 の場合 #-*- coding:utf-8 -*- #Hornerの方法 def main(): a = [1., 2., 3., 4., 5.] for x in xrange(1,6): print "fn(%f) = %f"%(x, fn(x, a, 4)) def fn(x, a, n): p = a[n] for i in …

「スマリヤンの決定不可能の論理パズル-ゲーデルの定理と様相論理-」10章-問題はより深く-

自信過剰の推論者 任意の命題pに関して、推論者はもし自分がpを信じているならば、 pは真であるに違いないと信じる。 つまり、p→qを信じていれば、命題Bp→Bqが真であり、Bp→Bqを正しく信じている。 定理 A ある命題pについて、1型の推論者が命題p≡~Bpを信じ…

Euler project 31

両替問題を書き換える #-*- coding:utf-8 -*- from datetime import datetime def Euler31(currency, n, m): if n == 0: return 1 if n < 0: return 0 if m <= 0 and n >= 1: return 1 return Euler31(currency, n, m-1) + Euler31(currency, n - currency[m…

Euler project 27

#-*- coding:utf-8 -*- import random from datetime import datetime #素数判定 def is_prime3(q,k=50): q = abs(q) if q == 2: return True if q < 2 or q&1 == 0: return False d = (q-1)>>1 while d&1 == 0: d >>= 1 for i in xrange(k): a = random.ran…

「スマリヤンの決定不可能の論理パズル-ゲーデルの定理と様相論理-」9章ーパラドックス?ー

一型の論者=命題論理を完全に理解するもの (1)論者はすべての恒真式を信じている。 (2)任意の命題X、Yに関して、その人はXとX→Yを信じるならば、Yを信じる。問題 教授 P「あなたが神が存在しないと正しく信じるならば、 そしてそのときにかぎり神は存…

メモ

カントの批判哲学 ジル・ドゥルーズ ~p22.経験論における世界の諸目的は、自然によって紐づけられる。 理性→独創的なまやかし、策略、諸目的などないカント 理性固有の諸目的がある、そしてそれだけが究極の目的 「究極目的とは、・・・自然だけでは十分であ…

Euler project 26

解答の方針: 普通に循環小数の循節をフェルマーの小定理に基づいて解く #-*- coding: utf-8 -*- import random from datetime import datetime #素数判定 def is_prime3(q,k=50): q = abs(q) if q == 2: return True if q < 2 or q&1 == 0: return False d =…

雑多なメモ(心の哲学入門)

心と意識 「意識的な心の状態」における「意識」の2つの意味 1,「反省的な意識」心の状態そのものについて考える ex. 事後的にある時点の自分の心の状態について考える 2. 「現象的な意識」知的体験において、質的特徴が意識に現れている ときに「クオリア…

Euler project 33

#-*- coding:utf-8 -*- from datetime import datetime def Euler33(): A = 1 C = 1 for a in xrange(1,10): for b in xrange(1,10): for c in xrange(1,10): if ((10*a + b) * c) == (( 10*b + c ) *a): if (a != b) and (a != c): A *= a C *= c return C/…

Euler project 28

#-*- coding:utf-8 -*- from datetime import datetime def sequence(x,n): low = x[-1] for i in xrange(1,5): x.append(low + i*n) return x def Euler28(): total = [1,3,5,7,9,13,17,21,25] n = 6 while n < 1001: total = sequence(total, n) n += 2 re…

Euler proejct 25

#問題(意訳) フィボナッチ数の桁が1000桁を越える最初の項を求めよ。 #-*- coding: utf-8 -*- from datetime import datetime def Euler25(): fib = [1,1] num = fib[-1] + fib[-2] max = 10**999 while num < max: num = fib[-1] + fib[-2] fib.append(…