Skip to content

Instantly share code, notes, and snippets.

@RoxasShadow
RoxasShadow / vigenere.rb
Created July 26, 2012 16:12
Vigènere in Ruby
##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~##
## Sirius Fucking Licence 1.2 "ShitStorm" ##
## Do the fuck you want. Get the fuck off. ##
## Using this licence don't make you more trasgressive. ##
## And doesn't mean you're not an asshole. ##
##~~~~~~~~~~~~~~~*The quiet after the shitstorm*~~~~~~~~~~~~~~~~~~~##
## Sirius Fucking Manifesto ##
## With this software pubblication licence you can modify, rewrite ##
## rape, burn, kill, delete, fuck, do nothing. In few words: ##
## DO DAFUQ YOU WANT AND DON'T EXCORIATE MY BALLS ##
@RoxasShadow
RoxasShadow / pkm.rb
Created July 28, 2012 11:35
Pokémon viewer
class Pokemon
attr_accessor :pid, :checksum
def to_s
"PID: #{@pid}\nChecksum: #{@checksum}"
end
end
data = File.read ARGV[0]
pokemon = Pokemon.new
w = File.open('n00b', ?a)
f = proc { |*a|
w.puts a.join
}
a = f.curry
5.times { |t| a[t] }
@RoxasShadow
RoxasShadow / gist:3928110
Created October 21, 2012 19:05
Windows hard link maker
#--
# urls.txt
# D:\Users\Giovanni\Documents\Ebook
# D:\Users\Giovanni\Documents\4A Games | Metro 2033
#++
(paths = []).tap { |paths|
File.read('urls.txt').each_line { |path|
next if path.gsub(/\s+/, '').empty?
path.gsub!(/\n/, '')
@RoxasShadow
RoxasShadow / gist:3960782
Created October 26, 2012 19:06
select_with_index
module Enumerable
def select_with_index
i = 0
self.select { |e|
i += 1
yield e, i
}
end
end
#include <stdio.h>
/* Niente funzioni e niente di niente, un array e un algoritmo di ordinamento bubblesort che te lo ordina in modo crescente semplicemente scambiando gli elementi.
*/
int main() {
int n;
printf("Values to add: ");
scanf("%d", &n);
if(n <= 2) {
require 'open-uri'
require 'nokogiri'
def puttana(url, what)
candidati = []
voti = []
doc = Nokogiri::HTML(open(url))
doc.xpath('//tr[@class="evid"]/th').each { |p|
@RoxasShadow
RoxasShadow / lessicografia.rb
Last active December 16, 2015 23:29
Scrivere un programma che legga da tastiera due interi N e K e una sequenza di N stringhe e che stampi le K stringhe più frequenti in essa contenute. Queste K stringhe devono essere stampate in ordine lessicografico.
#!/usr/bin/env ruby
=begin
#Scrivere un programma che legga da tastiera due interi N e K e una sequenza di N stringhe e che stampi le K stringhe più frequenti in essa contenute. Queste K stringhe devono essere stampate in ordine lessicografico.
Si può assumere che:
- non esistano due stringhe con la stessa frequenza;
- il valore di K sia minore o uguale al numero di stringhe distinte;
- le stringhe contengono soltanto caratteri alfanumerici (a − z minuscoli e maiuscoli o numeri, nessuno spazio o punteggiatura) e sono lunghe al più 100 caratteri ciascuna.
class Array
def most_popular(n = 1)
get_occurrency_hash[n * -1].first
end
def occurrences(n = 1)
get_occurrency_hash[n * -1].last
end
def has_duplicates?
#!/usr/bin/env ruby
require 'open-uri'
require 'nokogiri'
class String
def numeric?
self.to_i.to_s == self || self.to_f.to_s == self
end
end