rtcv

cannon-py

Jan 27th, 2022 (edited)
32
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.91 KB | None | 0 0
  1. import sys
  2. import math
  3. import json
  4. # ***************************************************************************
  5. # Este comando captura da plataforma Wisecode o INPUT do jogo
  6. # NÃO REMOVER ESTAS LINHAS
  7. # ***************************************************************************
  8. ships = input()  
  9. # ************************************************************************************
  10. # Variável ships recebe o array contendo os pontos cardeais dos quais as naves virão
  11. # (informada automaticamente pelo sistema)
  12. # NÃO REMOVER ESTAS LINHAS
  13. # ************************************************************************************
  14. arrShips = json.loads(ships)
  15. # ***************************************************************************
  16. # Variável rotation que conterá sua resposta, ou seja, conterá os valores
  17. # em graus que o canhão irá girar de acordo com o que você definir
  18. # Estará vazio inicialmente e deve ser preenchido com sua lógica conforme objetivo
  19. # Ao final do código será passada para o processamento do sistema
  20. # NÃO REMOVER ESTA LINHA
  21. # ***************************************************************************
  22. rotation = []
  23. # *********************************************************************************
  24. # EXEMPLO do comando que pode ser utilizado para depuração.
  25. # Neste caso imprime a direção da qual a nave inimiga virá
  26. # *********************************************************************************
  27. debug:print(arrShips, file=sys.stderr, flush=True)
  28. # ***************************************************************************
  29. # Adicione aqui a lógica de programação para ganhar o jogo
  30. # ***************************************************************************
  31. currentAngle = 360
  32.  
  33. for i in arrShips:
  34.     if i == 'norte':
  35.         shootAt = (360 - currentAngle) + 0
  36.         if shootAt > 180:
  37.             shootAt = shootAt - 360
  38.         rotation.append(shootAt)
  39.         currentAngle = 360
  40.     if i == 'sul':
  41.         shootAt = (360 - currentAngle) + 180
  42.         if shootAt > 180:
  43.             shootAt = shootAt - 360
  44.         rotation.append(shootAt)
  45.         currentAngle = 180
  46.     if i == 'leste':
  47.         shootAt = (360 - currentAngle) + 90
  48.         if shootAt > 180:
  49.             shootAt = shootAt - 360
  50.         rotation.append(shootAt)
  51.         currentAngle = 90
  52.     if i == 'oeste':
  53.         shootAt = (360 - currentAngle) + 270
  54.         if shootAt > 180:
  55.             shootAt = shootAt - 360
  56.         rotation.append(shootAt)
  57.         currentAngle = 270
  58.        
  59. # ***********************************************************************************
  60. # Este comando informa a plataforma Wisecode a resposta para que seja processado
  61. # A partir daqui se iniciará o jogo. Boa Sorte!
  62. # NÃO REMOVER ESTAS LINHAS
  63. # ***********************************************************************************
  64. debug:print(rotation, file=sys.stderr, flush=True)
  65. print(json.dumps(rotation))
Add Comment
Please, Sign In to add comment