Muito obrigado por reparares no erro. Tinha escrito o código à pressa no pc do departamento, já corrigi a parte do módulo que me tinha esquecido de pôr
mod = 10**9+7 def powa(a,b): if b == 0: return 1 elif b == 1: return a elif( b %2 == 0): return ((pow(a, b/2)%mod)**2)%mod else: return (a*((pow(a, b-1)%mod))%mod)
n = input() n = n-1 result = 3*( powa(3,n) - (-1)**(n%2))/4 print result
Ideia:
A ideia é apressar a exponenciação e evitar que o python rebente por causa de uma varíavel muito grande (3^10000000 é mesmo muito grande) daí crio a minha própria função de exponencialização, que além de ir fazendo o módulo dos valores, (pois sendo uma potência, o módulo da potência é igual à potência do módulo.