Let's say you have the following models:
class Admin < ActiveRecord::Base
has_one :login, as: :loginable
end
class User < ActiveRecord::Base
has_one :login, as: :loginable
end
#!/usr/bin/env bash | |
uninstall() { | |
list=`gem list --no-versions` | |
for gem in $list; do | |
gem uninstall $gem -aIx | |
done | |
gem list | |
gem install bundler | |
} |
Let's say you have the following models:
class Admin < ActiveRecord::Base
has_one :login, as: :loginable
end
class User < ActiveRecord::Base
has_one :login, as: :loginable
end
def FindLargestPrime(n) | |
return 1 if n == 1 | |
prime_factor = 2 | |
while prime_factor * prime_factor <= n do | |
if n % prime_factor == 0 then n /= prime_factor | |
else prime_factor += 1 | |
end | |
end | |
n | |
end |
fib1 = 1 | |
fib2 = 2 | |
sum = fib2 | |
fib = 0 | |
until (fib >= 4000000) | |
fib = fib1 + fib2 | |
fib1 = fib2 | |
fib2 = fib | |
sum += fib if fib.even? |
Project Euler 1sum = 0 | |
(1...1000).each do |num| | |
sum += num if num % 3 == 0 || num % 5 == 0 | |
end | |
puts sum |
def palindrome?(a) | |
a.to_s == a.to_s.reverse | |
end | |
def dev_by_3digit?(a) | |
999.downto(100) do |i| | |
if a % i == 0 && a / i < 999 | |
return true | |
end | |
end |
def devisible?(num, limit) | |
devisible = true | |
limit.downto(1) do |i| | |
devisible = false if num % i != 0 | |
break if !devisible | |
end | |
devisible | |
end | |
def smallest_multiple(limit) |
def sum_of_squares(num) | |
(1..num).inject { |mem, var| mem + var ** 2 } | |
end | |
def square_of_sum(num) | |
sum = (1..num).inject { |mem, var| mem + var } | |
sum ** 2 | |
end | |
p square_of_sum(100) - sum_of_squares(100) |
# Sum of first n numbers is n(n+1)/2 | |
# Sum of squares of first n numbers is n(n+1)(2n + 1)/6 | |
# Expanded form for sum ^ 2 - sum of squares = n^4/4+n^3/6-n^2/4-n/6 | |
def formula(n) | |
(n ** 4) / 4 + (n ** 3) / 6 - (n ** 2) / 4 - n / 6 | |
end | |
p formula(100) |
require 'prime' | |
primes = Prime.first 10001 | |
p primes.last |