fork download
  1. package main
  2.  
  3. import (
  4. "bufio"
  5. "fmt"
  6. "os"
  7. )
  8.  
  9. func main() {
  10. s := bufio.NewScanner(os.Stdin)
  11. for s.Scan() {
  12. line := s.Text()
  13. rotation, size := line, 0
  14. for i := 0; i < len(line); i++ {
  15. attempt := line[i:] + line[:i]
  16. if attempt < rotation {
  17. rotation, size = attempt, i
  18. }
  19. }
  20. fmt.Printf("%d %s\n", size, rotation)
  21. }
  22. }
Success #stdin #stdout 0s 3080KB
stdin
aabbccddbbaabb
	onion
	bbaaccaadd
	alfalfa
	weugweougewoiheew
	pneumonoultramicroscopicsilicovolcanoconiosis
stdout
10 aabbaabbccddbb
0 	onion
0 	bbaaccaadd
0 	alfalfa
0 	weugweougewoiheew
0 	pneumonoultramicroscopicsilicovolcanoconiosis