CF995E.Number Clicker

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Allen is playing Number Clicker on his phone.

He starts with an integer uu on the screen. Every second, he can press one of 3 buttons.

  1. Turn uu+1(modp)u \to u+1 \pmod{p} .
  2. Turn uu+p1(modp)u \to u+p-1 \pmod{p} .
  3. Turn uup2(modp)u \to u^{p-2} \pmod{p} .

Allen wants to press at most 200 buttons and end up with vv on the screen. Help him!

输入格式

The first line of the input contains 3 positive integers: u,v,pu, v, p ( 0u,vp10 \le u, v \le p-1 , 3p109+93 \le p \le 10^9 + 9 ). pp is guaranteed to be prime.

输出格式

On the first line, print a single integer \ell , the number of button presses. On the second line, print integers c1,,cc_1, \dots, c_\ell , the button presses. For 1i1 \le i \le \ell , 1ci31 \le c_i \le 3 .

We can show that the answer always exists.

输入输出样例

  • 输入#1

    1 3 5
    

    输出#1

    2
    1 1
    
  • 输入#2

    3 2 5
    

    输出#2

    1
    3
    

说明/提示

In the first example the integer on the screen changes as 1231 \to 2 \to 3 .

In the second example the integer on the screen changes as 323 \to 2 .

首页