jzoj4229
按照題意暴力模擬即可
#include<bits/stdc++.h>
using namespace std;
int m;
typedef long long ll;
ll a1,q,n;
#define mo 1000000007ll
ll qp(ll x,ll y){
ll r=1;
while(y){
if(y&1)r=r*x%mo;
x=x*x%mo;
y>>=1;
}
return r;
}
int main(){
scanf("%d",&m);
while(m--){
scanf("%lld%lld%lld",&a1,&q,&n);
if(q==1){
n%=mo;
printf("%lld\n",a1*n%mo);
}
else{
ll up=a1*(1-qp(q,n)+mo)%mo;
ll dw=qp((1-q+mo)%mo,mo-2);
printf("%lld\n",up*dw%mo);
}
}
}
jzoj4229的更多相关文章
随机推荐
- XAML中用一字符即可展示漂亮的图型
XAML中用一字符即可展示漂亮的图型 例如:Symbol Icon: People http://www.geekchamp.com/icon-explorer/action-icons/icon?c ...
- Django框架之models和不依赖Qquery的ajax请求
一.models表字段 1)class表字段的创建 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) ...
- java equals重写
@Override public boolean equals(Object obj) { if(this == obj) { return true; ...
- git只合并某一个分支的某个commit
第一种情况:只合并一个commit git checkout develop-hbb git cherry-pick 7c32be61 以上,7c32be61是develop上的一个fix bug的c ...
- C++STL 迭代器
迭代器类别: 输入迭代器(只读迭代器).输出迭代器(只写迭代器).正向迭代器.双向迭代器.随机访问迭代器 逆向遍历 for(vector<int>::reverse_iterator ri ...
- 2-具体学习Github---init add commit log diff
1.安装: 首先找到git的官网,内部有下载链接. 也可以用下面的,我的是win7的64位系统: 可以在此处下载:Git-2.13.0-64-bit.exe链接:http://pan.baidu.co ...
- java中的标识符、关键字、保留字
Java中关键字(keyword)和保留字(reservedword) Keyword :Java的关键字对java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等. Reserv ...
- font-style字体设置
用到一些字体找起来很麻烦,扒了一些 未测试 HTML,CSS,font-family:中文字体的英文名称 宋体 SimSun黑体 SimHei微软雅黑 Microsoft YaHei微软正黑体 Mic ...
- BT1120中的串行传输
BT1120不仅支持并行传输,也定义了并行传输.详细说明可以看ITU-R BT1120,在这里只做概述和总结.
- 解决UITableView上的cell的重用
1.通过为每个cell指定不同的重用标识符(reuseIdentifier)来解决 // static NSString *rankCellIndefier = @"rankC ...