#include<iostream>
#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int mod=998244353;
int main()
{
ll a,b,k;
cin>>a>>b>>k;
ll ans=1;
for(int i=1;i<=k;i++){
if(i%a==0)
ans=(ans%mod*2%mod)%mod;
if(i%b==0 && ans==1)
continue;
else if(i%b==0 && ans%2==0)
ans=ans/2%mod;
else if(i%b==0 && ans%2==1)
//ans=(ll)ceil((ans+1)/2.0)%mod; //我一开始是这样写的
ans=(ans*499122177)%mod;
}
cout<<ans%mod<<endl;
return 0;
}
还是不太懂
为什么奇数时除2要按照提示那样写,
我这样写哪里有问题 (ll)ceil((ans+1)/2.0)%mod;