Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
efinf:blc2016:loesungen-2016-12-13 [2016/12/18 10:47] Ivo Blöchliger [Lösungen Es lebe der König] |
efinf:blc2016:loesungen-2016-12-13 [2016/12/21 21:46] (current) patrick_lehn [Lösungen] |
||
---|---|---|---|
Line 54: | Line 54: | ||
end | end | ||
end | end | ||
+ | </ | ||
+ | |||
+ | |||
+ | === Luca === | ||
+ | <code ruby datensalat.rb> | ||
+ | def min(*values) | ||
+ | | ||
+ | end | ||
+ | |||
+ | def max(*values) | ||
+ | | ||
+ | end | ||
+ | |||
+ | liste = File.open(" | ||
+ | |||
+ | muttern = Array.new(150, | ||
+ | schrauben = Array.new(150, | ||
+ | |||
+ | liste.each{|e| if e[0]==" | ||
+ | |||
+ | for e in 0..149 do | ||
+ | minimum = min(muttern[e], | ||
+ | puts "# | ||
+ | end | ||
+ | </ | ||
+ | |||
+ | === Noel === | ||
+ | <code php> | ||
+ | <?php | ||
+ | |||
+ | /* Sry, wegen PHP...*/ | ||
+ | |||
+ | $m = []; | ||
+ | $s = []; | ||
+ | |||
+ | $lines = preg_split('/ | ||
+ | |||
+ | foreach($lines as $line) { | ||
+ | $v = explode(" | ||
+ | | ||
+ | if($v[0] == " | ||
+ | if(isset($m[$v[1]])) { | ||
+ | $m[$v[1]] += 1; | ||
+ | } else { | ||
+ | $m += [$v[1] => 1]; | ||
+ | } | ||
+ | } else { | ||
+ | if(isset($s[$v[1]])) { | ||
+ | $s[$v[1]] += 1; | ||
+ | } else { | ||
+ | $s += [$v[1] => 1]; | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | ?> | ||
+ | </ | ||
+ | |||
+ | ===Patrick=== | ||
+ | <code ruby schrauben.rb> | ||
+ | liste = File.readlines(" | ||
+ | |||
+ | liste.sort!{|a, | ||
+ | if a[1]==b[1] | ||
+ | a[0]< | ||
+ | | ||
+ | a[1]< | ||
+ | end | ||
+ | } | ||
+ | |||
+ | a=0 # a & g stehen für die Indizes der Unterarrays | ||
+ | g=1 | ||
+ | schrauben = 0 | ||
+ | muttern = 0 | ||
+ | last_size=liste[a][1] | ||
+ | puts # | ||
+ | |||
+ | while a!=liste.size | ||
+ | if liste[a][1]==last_size | ||
+ | while liste[a]==liste[g] | ||
+ | | ||
+ | end | ||
+ | | ||
+ | if liste[a][0]==" | ||
+ | | ||
+ | elsif liste[a][0]==" | ||
+ | | ||
+ | end | ||
+ | a=g # a wird aktualisiert | ||
+ | else | ||
+ | if muttern == 0 or schrauben == 0 # damit kein Auswurf entsteht wenn es keine Paare gibt | ||
+ | nil | ||
+ | elsif muttern > schrauben | ||
+ | puts "# | ||
+ | elsif muttern < schrauben | ||
+ | puts "# | ||
+ | elsif | ||
+ | puts "# | ||
+ | end | ||
+ | | ||
+ | | ||
+ | | ||
+ | end | ||
+ | end | ||
+ | puts # leicht hübschere Ausgabe | ||
+ | # gesamt Aufwand ist O(nlog(n)) | ||
+ | |||
</ | </ | ||
Line 66: | Line 172: | ||
# No comment | # No comment | ||
</ | </ | ||
- | |||
=== Mathematiker === | === Mathematiker === |