목차

준영이

ps
링크acmicpc.net/…
출처BOJ
문제 번호31443
문제명준영이
레벨골드 4
분류

애드혹

시간복잡도O(log(nm))
인풋사이즈n<=1000, m<=1000
사용한 언어Python 3.11
제출기록31120KB / 40ms
최고기록40ms
해결날짜2024/03/05
출처

월간 향유회 2024. 02. -겨울 운동회 편- - A

풀이

코드

"""Solution code for "BOJ 31443. 준영이".

- Problem link: https://www.acmicpc.net/problem/31443
- Solution link: http://www.teferi.net/ps/problems/boj/31443

Tags: [ad hoc]
"""

MOD = 10**9 + 7


def main():
    N, M = [int(x) for x in input().split()]

    a = N * M
    if a == 1:
        print('1')
    elif a % 3 == 0:
        print(pow(3, a // 3, MOD))
    elif a % 3 == 2:
        print(2 * pow(3, (a - 2) // 3, MOD) % MOD)
    elif a % 3 == 1:
        print(2 * 2 * pow(3, (a - 4) // 3, MOD) % MOD)


if __name__ == '__main__':
    main()