結果

問題 No.1464 Number Conversion
ユーザー jebouinjebouin
提出日時 2021-04-02 22:15:36
言語 C++14
(gcc 12.3.0 + boost 1.83.0)
結果
AC  
実行時間 940 ms / 2,000 ms
コード長 1,495 bytes
コンパイル時間 1,441 ms
コンパイル使用メモリ 170,652 KB
実行使用メモリ 6,944 KB
最終ジャッジ日時 2024-06-06 07:05:18
合計ジャッジ時間 29,483 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 901 ms
6,812 KB
testcase_01 AC 915 ms
6,816 KB
testcase_02 AC 901 ms
6,944 KB
testcase_03 AC 899 ms
6,940 KB
testcase_04 AC 896 ms
6,940 KB
testcase_05 AC 913 ms
6,940 KB
testcase_06 AC 901 ms
6,940 KB
testcase_07 AC 900 ms
6,944 KB
testcase_08 AC 940 ms
6,940 KB
testcase_09 AC 904 ms
6,944 KB
testcase_10 AC 902 ms
6,940 KB
testcase_11 AC 909 ms
6,940 KB
testcase_12 AC 898 ms
6,940 KB
testcase_13 AC 898 ms
6,944 KB
testcase_14 AC 893 ms
6,944 KB
testcase_15 AC 910 ms
6,940 KB
testcase_16 AC 912 ms
6,940 KB
testcase_17 AC 897 ms
6,944 KB
testcase_18 AC 903 ms
6,944 KB
testcase_19 AC 921 ms
6,940 KB
testcase_20 AC 907 ms
6,940 KB
testcase_21 AC 909 ms
6,940 KB
testcase_22 AC 919 ms
6,944 KB
testcase_23 AC 900 ms
6,944 KB
testcase_24 AC 897 ms
6,940 KB
testcase_25 AC 917 ms
6,940 KB
testcase_26 AC 939 ms
6,944 KB
testcase_27 AC 899 ms
6,944 KB
testcase_28 AC 909 ms
6,940 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp: In function 'long long int solve()':
main.cpp:46:8: warning: 'cd' may be used uninitialized [-Wmaybe-uninitialized]
   46 |     cd /= g;
      |     ~~~^~~~
main.cpp:32:13: note: 'cd' was declared here
   32 |     int cx, cd;
      |             ^~
main.cpp:45:8: warning: 'cx' may be used uninitialized [-Wmaybe-uninitialized]
   45 |     cx /= g;
      |     ~~~^~~~
main.cpp:32:9: note: 'cx' was declared here
   32 |     int cx, cd;
      |         ^~

ソースコード

diff #

#include <bits/stdc++.h>
#define rep(i,a,b) for(int i = (a); i <= (b); i++)
#define rng(a) a.begin(), a.end()
#define ina(n,a) cin >> n; for(int i = 1; i <= n; i++) cin >> a[i]
#define sz(x) (int)(x).size()
#define se second
#define fi first
#define prev            coyhhhhhhyoc    
#define next          sdNNNmNNNNNNNmds  
#define y0           hNNNNy_yNNNNNN_sNh
#define y1          mNNNNNdtdNNNNNNtsNNm
#define yn          mNNNNNNNNy___smNNNms
#define tm            oooooosyysooooot 
#define read               tyhyt        
#define rank              ytmNmo         
#define index              yyy
#define pb push_back
#define pcnt __builtin_popcountll
#define rrep(i,a,b) for(int i = (b); i >= (a); i--)
#define rall(x,a) for(auto x : a)
#define MOD 1000000007
#define endl "\n"
#define int long long
typedef long long ll;
using namespace std;

const int M = 1e16;

int solve() {
    double dx, md = 10;
    cin >> dx;
    int cx, cd;
    string ans;
    for(int d = 1; d * d <= M; d++) {
        if(M % d) continue;
        int x = round(d * dx);
        double dist = abs(d * dx - x);
        int g = __gcd(x, d);
        if(dist < md) {
            md = dist;
            cx = x, cd = d;
        }
    }
    int g = __gcd(cx, cd);
    cx /= g;
    cd /= g;
    ans = to_string(cx) + "/" + to_string(cd);
    cout << ans << endl;
    return 0;
}
 
signed main() {
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    int t = 1;
    while(t--) {
        solve();
    }
    return 0;
}

0