結果
| 問題 |
No.1350 2019-6problem
|
| コンテスト | |
| ユーザー |
zumin
|
| 提出日時 | 2021-02-25 00:17:20 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 880 bytes |
| コンパイル時間 | 702 ms |
| コンパイル使用メモリ | 63,812 KB |
| 実行使用メモリ | 13,756 KB |
| 最終ジャッジ日時 | 2024-09-25 01:07:38 |
| 合計ジャッジ時間 | 4,330 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | TLE * 1 -- * 20 |
ソースコード
#include <iostream>
using namespace std;
using ll=long long;
ll gcd(ll m,ll n){
if(n==0) return m;
return gcd(n,m%n);
}
ll lcm(ll x,ll y){
return x*y/gcd(x,y);
}
int main(){
ll a,b,c,k;
cin>>a>>b>>k;
c=lcm(a,b);
ll oka=k;
ll nga=1;
while(oka-nga>1){
ll cen=(oka+nga)/2;
ll acen=a*cen;
ll plc=cen+acen/b-acen/c;
if(plc>=k){
oka=cen;
if(plc==k){
cout<<acen<<endl;
return 0;
}
}
else nga=cen;
}
ll okb=k;
ll ngb=1;
while(okb-ngb>1){
ll cen=(okb+ngb)/2;
ll bcen=b*cen;
ll plc=cen+bcen/a-bcen/c;
if(plc>=k){
okb=cen;
if(plc==k){
cout<<bcen<<endl;
return 0;
}
}
else nga=cen;
}
return 0;
}
zumin