#3367. 幂(mi)

幂(mi)

题目描述

给定初始值 kk 和操作次数 nn。

每次操作给定一个数 pp,将当前的 kk 更新为 kpmod1000000007。k^p mod 1000000007。 需要在每次操作后输出当前的 kk 值。

输入格式

第一行:两个整数 nn 和 kk,表示操作次数和初始值。

接下来 nn 行:每行一个整数 pp,表示本次操作的指数。

输出格式

nn 行:每行一个整数,表示每次操作后的 kk 值(即 kpmod1000000007)k^p mod 1000000007)。

样例 1 输入

3 5 
3 
2 
3

样例 1 输出

125
15625
697238927

样例 1 解释

• 53=1255^3 =125

• 1252=15625125^2 = 15625

• 1562515625%3 = 3814697265625

• 3814697265625mod1000000007=6972389273814697265625 mod 1000000007 = 697238927。

数据范围

• 对于 50%50\% 的数据,n≤1000n ≤ 1000

• 对于 100%100\% 的数据,n≤100000n ≤ 100000

• 对于 10%10\% 的数据,p≤10p ≤ 10

• 对于 30%30\% 的数据,p≤1000p ≤ 1000

• 对于 100%100\% 的数据,p≤1000000000p ≤ 1000000000