結果
| 問題 |
No.604 誕生日のお小遣い
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2020-09-24 12:53:25 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 2,402 bytes |
| コンパイル時間 | 904 ms |
| コンパイル使用メモリ | 82,884 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-06-28 04:52:12 |
| 合計ジャッジ時間 | 1,436 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 8 WA * 13 |
ソースコード
#include<vector>
#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include <iostream>
#include <algorithm>
#include <map>
#include <cmath>
#include<queue>
#include <sstream>
#include <set>
#include<stack>
#include <utility>
#include <tuple>
#define INF 1000000000000
const long long MOD = 998244353;
using namespace std;
typedef long long llong;
#define debug cout << "Hello" << endl;
//int isalpha(char ch): ch がアルファベットなら true を返す
//int isdigit(char ch): ch が数字なら true を返す
//int islower(char ch): ch が小文字なら true を返す
//int isupper(char ch): ch が大文字なら true を返す
//int tolower(char ch): ch の小文字を返す
//int toupper(char ch): ch の大文字を返す
//string型
//size() 文字数を返す
//Insert() (指定した場所に)文字・文字列を挿入する
//erase() (指定した場所の)文字・文字列を削除する
//clear() すべての文字を削除する
//substr() 文字列の(指定した)部分文字列を返す
//replace() (指定した)部分文字列を新しい文字列に置換する
//c_str()変換
//文字列の比較は、<=や==などを使え
//replace関数を使い、簡単に文字列を置換
//リバース関数:reverse(str.begin(), str.end());
//map<type, type> dict;で宣言
//グラフ理論用変数
//vector<vector<llong> > graph(N);
//ソート
//降順sort(v.begin(), v.end(), std::greater<Type>());
//大文字から小文字へんかん
//w[i] = w[i]-'A'+'a';
//vector
//assignメソッド 引数:サイズ、値
//与えられたサイズと値でvectorを初期化する
//queueクラス
//find()次に取り出す値の表示をする。
//pop()値を取り出す。戻り値はなし
//push()キューに値をプッシュする
//priority_queueクラス
//切り上げ
//ceil
//floor
bool check(llong A, llong B, llong C, llong N){
llong total = 0;
total = (N/A)*B + (N-N/A);
if(total<C){
return true;
}
return false;
}
int main(){
llong A,B,C;
cin >> A >> B >> C;
llong N=1000000000000000000;
llong right, left;
llong mid;
right = N+1;
left = 1;
while((right-left)>1){
mid = (right+left)/2;
if(check(A,B,C,mid)){
left = mid;
}else{
right = mid;
}
}
cout << right << endl;
return 0;
}