题目链接:
分析:
当x=1时,直接由公式f(x)=ax得出结果;
当x≥1时,由公式可推出
对于a*a进行快速幂处理,记得开long long
AC代码:
#include<bits/stdc++.h>
using namespace std;
const long long N=998244353;
int t;
long long fun(long long a,long long x){
return a*x%N;
}
long long quick_pow(long long a, long long x) {
long long res = 1;
while (x) {
if (x & 1) res = res * a % N;
a = a * a % N;
x >>= 1;
}
return res;
}
int main(){
cin>>t;
while(t--){
long long a,x;
cin>>a>>x;
if(x==1)
cout<<(long long)a*x%N<<endl;
else if(x>1){
long long t =quick_pow(a, 2) % N;
long long s = (x - 1) * x / 2;
s %= N;
cout << (t * s) % N << endl;
}
}
return 0;
}