You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							36 lines
						
					
					
						
							637 B
						
					
					
				
			
		
		
	
	
							36 lines
						
					
					
						
							637 B
						
					
					
				#!/usr/bin/env julia
 | 
						|
 | 
						|
infile = size(ARGS, 1) > 0 ? ARGS[1] : "day2input.txt"
 | 
						|
println("infile = ", infile)
 | 
						|
 | 
						|
a_move_value = Dict("A"=>1, "B"=>2, "C"=>3)
 | 
						|
x_move_value = Dict("X"=>1, "Y"=>2, "Z"=>3)
 | 
						|
function score(opponent, self)
 | 
						|
  global a_move_value, x_move_value
 | 
						|
  oval = a_move_value[opponent]
 | 
						|
  sval = x_move_value[self]
 | 
						|
 | 
						|
  diff = sval - oval
 | 
						|
 | 
						|
  if diff == 0
 | 
						|
    # tie
 | 
						|
    return 3 + sval
 | 
						|
  elseif (diff == 1 || diff == -2)
 | 
						|
    # win
 | 
						|
    return 6 + sval
 | 
						|
  else
 | 
						|
    # loss
 | 
						|
    return sval
 | 
						|
  end
 | 
						|
end
 | 
						|
 | 
						|
io = open(infile, "r")
 | 
						|
total = 0
 | 
						|
for line in eachline(io)
 | 
						|
  global total
 | 
						|
  o, s = split(line)
 | 
						|
  total += score(o, s)
 | 
						|
end
 | 
						|
 | 
						|
println(total)
 |