It's the ending of another well played chess game. You're the white player, and you still have a rook and your king. Your opponent only has his king left.
Since you're white, it's your turn. Create a program to play this chess match. Its output can be a sequence of moves, a gif animation, ASCII art or whatever you like.
It seems quite obvious, but I'll state it explicitly: you have to win the game (in a finite number of moves). It's always possible to win from this position. DO NOT LOSE THAT ROOK. DO NOT STALEMATE.
Your program may or may not accept a human input for the starting position and for each black move (you can safely assume this is a legal position, i.e. the kings are not touching each other). If it doesn't, a random starting position and random movements for the black king will suffice.
Score
Your score will be length in byte of your code + bonus. Any language is allowed, lowest score wins.
Bonus
-50 if your program allows both a human defined starting position and a random one. Humans can enter it via stdin, file, GUI...
-100 if your program allows both a human and a random player to move the black king
+12345 if you rely on an external chess solver or a built-in chess library
Good luck!
Update!
Extra rule: The match must be played until checkmate. Black does not resign, doesn't jump outside the chessboard and doesn't get kidnapped by aliens.
Hint
You can probably get help from this question on chess.se.