# Enter your code here. Read input from STDIN. Print output to STDOUT gets stdin sticks gets stdin lengths set x 0 set total 0 proc prime { num } { set primecount 0 if {$num == 1} {return 1} for {set i 2} { $i <= $num } {incr i 1} { #set ii [expr $i-1] if { [expr fmod($num,$i)] == 0 } {incr primecount} if { $primecount > 1 } { return 0; break } elseif { $primecount == 1 && $i == $num } {return 1} } };#prime fun proc opr { y } { set var [prime $y] if { $var == 1 } { return $y } else { set count 0 set total 0 for { set i 2 } { $i <= $y } {incr i 1} { #puts "$y,$i" if { [expr fmod($y,$i)] == 0 && $count == 0 } { incr count 1 set multiple [expr $y/$i] #set last_prime [prime [expr $i]] incr total [expr $multiple+$y] return $total } elseif { $count > 0} {return $total ; break } };#for };#func } while { $x < $sticks } { set op [lindex $lengths $x] set res [opr $op] set total [expr $total+$res] #puts $res incr x 1 } puts [expr $total+$sticks]