This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| require "mathn" | |
| def f(x) | |
| a = [] | |
| hash = {} | |
| n = 1/x | |
| while hash[n].nil? | |
| hash[n] = true | |
| n *= 10 | |
| n -= n.to_i | |
| end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| require "prime" | |
| mx = 1000 | |
| res = [0, 0, 0] | |
| for b in -mx+1...mx | |
| next unless b.prime? | |
| for a in -mx+1...mx | |
| l = 0 | |
| l += 1 while (l*l + a*l + b).prime? | |
| res = [res, [l, a, b]].max |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| $facto = [1] | |
| for i in 1..10 | |
| $facto[i] = $facto[i-1] * i | |
| end | |
| def f(n) | |
| res = 0 | |
| until n.zero? | |
| res += $facto[n%10] | |
| n /= 10 | |
| end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| p 1.upto(9999).count{|n| | |
| 50.times.all?{ | |
| n += n.to_s.reverse.to_i | |
| n.to_s != n.to_s.reverse | |
| } | |
| } | |
| #=> 249 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/usr/bin/ruby | |
| def f(n) | |
| n.to_s.split('').map(&:to_i).inject(0){|a,b|a+b**2} | |
| end | |
| a = Hash.new do |hash, n| | |
| hash[n] = (n == 1 || n == 89) ? n : hash[f(n)] | |
| end | |
| p 1.upto(1E7).count{|n|a[f(n)] == 89} | |
| #=> 8581146 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| p Hash.new{|hash, n| | |
| hash[n] = n.zero? ? 1 : n < 0 ? 0 : (1..4).map{|i|hash[n-i]}.inject(&:+) | |
| }[50] | |
| #=> 100808458960497 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #include <iostream> | |
| typedef long long ll; | |
| using namespace std; | |
| const int MOD = (int)(1E9+7); | |
| struct MOD_INT{//{{{ | |
| int x; | |
| MOD_INT(const int &x=0): x((x%MOD+MOD)%MOD){} | |
| MOD_INT(const ll &x=0): x((x%MOD+MOD)%MOD){} | |
| MOD_INT(const MOD_INT &o): x(o.x){} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #include <iostream> | |
| #include <vector> | |
| #include <cassert> | |
| using namespace std; | |
| //BEGIN SNIPLATE sum | |
| //{{abbr: sum for vector<double>}} | |
| //{{class: util, statistics}} | |
| //{{pattern: SNIPLATE_SUM}} | |
| double sum(vector<double> in) { //SNIPLATE_SUM |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| double sum(vector<double> in) { //SNIPLATE_SUM | |
| double res = 0; | |
| for(int i = 0; i < in.size(); ++i) { | |
| res += in[i]; | |
| } | |
| return res; | |
| } | |
| double variance_s(vector<double> in) { | |
| double avg = average(in); | |
| for(int i = 0; i < in.size(); ++i) { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #include <iostream>//{{{ | |
| #include <string> | |
| #include <vector> | |
| #include <deque> | |
| #include <stack> | |
| #include <queue> | |
| #include <set> | |
| #include <map> | |
| #include <list> | |
| #include <bitset> |
OlderNewer