提出 #577404


ソースコード 拡げる

#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdio>
#include <cmath>

using namespace std;

typedef long long ll;

char s[20]; int n; ll num;
bool use[10]; bool flag; ll ans, da, top;

char r[20]; char p[20];
char st[20];

int main()
{
    scanf("%s", s);
    n = strlen(s);
    sscanf(s, "%lld", &num);

    top = 1;
    for(int ni = 0; ni < n; ni++) top *= 10;

    for(int i = 0; i < 10; i++) r[i] = i+'0';

    while(1)
    {
        for(int ni = 0; ni < n; ni++) p[ni] = r[ni];
        p[n] = '\0';

        ll t;
        sscanf(p, "%lld", &t);

        ll d = min(abs(num-t), top-abs(num-t));

        if( !flag || d > da || d == da && t < ans )
        {
            flag = true;
            da = d;
            ans = t;
        }

        if( !next_permutation(r, r+10) ) break;
    }

    sprintf(st, "%%0%dlld\n", n);
    printf(st , ans);
}

提出情報

提出日時
問題 B - Change a Password
ユーザ gkevinyen5418
言語 C++11 (GCC 4.8.1)
得点 100
コード長 928 Byte
結果 AC
実行時間 1153 ms
メモリ 1088 KiB

コンパイルエラー

./Main.cpp: In function ‘int main()’:
./Main.cpp:19:19: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
     scanf("%s", s);
                   ^

ジャッジ結果

セット名 All
得点 / 配点 100 / 100
結果
AC × 61
セット名 テストケース
All 00_test_00, 00_test_01, 00_test_02, 00_test_03, 01_rand_00, 01_rand_01, 01_rand_02, 01_rand_03, 01_rand_04, 01_rand_05, 01_rand_06, 01_rand_07, 01_rand_08, 01_rand_09, 01_rand_10, 01_rand_11, 01_rand_12, 01_rand_13, 01_rand_14, 01_rand_15, 01_rand_16, 01_rand_17, 01_rand_18, 01_rand_19, 01_rand_20, 01_rand_21, 01_rand_22, 01_rand_23, 01_rand_24, 01_rand_25, 01_rand_26, 01_rand_27, 01_rand_28, 01_rand_29, 01_rand_30, 01_rand_31, 01_rand_32, 01_rand_33, 01_rand_34, 01_rand_35, 01_rand_36, 01_rand_37, 01_rand_38, 01_rand_39, 01_rand_40, 01_rand_41, 01_rand_42, 01_rand_43, 01_rand_44, 01_rand_45, 01_rand_46, 01_rand_47, 01_rand_48, 01_rand_49, 99_handmake_00, 99_handmake_01, 99_handmake_02, 99_handmake_03, 99_handmake_04, 99_handmake_05, 99_handmake_06
ケース名 結果 実行時間 メモリ
00_test_00 AC 799 ms 1000 KiB
00_test_01 AC 807 ms 1048 KiB
00_test_02 AC 904 ms 1052 KiB
00_test_03 AC 1096 ms 1048 KiB
01_rand_00 AC 1052 ms 1044 KiB
01_rand_01 AC 1105 ms 1048 KiB
01_rand_02 AC 1053 ms 1048 KiB
01_rand_03 AC 954 ms 1088 KiB
01_rand_04 AC 964 ms 1028 KiB
01_rand_05 AC 954 ms 980 KiB
01_rand_06 AC 950 ms 1052 KiB
01_rand_07 AC 995 ms 1040 KiB
01_rand_08 AC 1050 ms 1044 KiB
01_rand_09 AC 1143 ms 936 KiB
01_rand_10 AC 734 ms 940 KiB
01_rand_11 AC 756 ms 1012 KiB
01_rand_12 AC 957 ms 1044 KiB
01_rand_13 AC 1099 ms 1048 KiB
01_rand_14 AC 797 ms 1044 KiB
01_rand_15 AC 1006 ms 1040 KiB
01_rand_16 AC 723 ms 1036 KiB
01_rand_17 AC 1050 ms 1036 KiB
01_rand_18 AC 852 ms 1040 KiB
01_rand_19 AC 955 ms 1048 KiB
01_rand_20 AC 725 ms 992 KiB
01_rand_21 AC 851 ms 1048 KiB
01_rand_22 AC 1145 ms 1040 KiB
01_rand_23 AC 859 ms 932 KiB
01_rand_24 AC 725 ms 936 KiB
01_rand_25 AC 1052 ms 1040 KiB
01_rand_26 AC 1145 ms 1044 KiB
01_rand_27 AC 679 ms 1048 KiB
01_rand_28 AC 1053 ms 1044 KiB
01_rand_29 AC 1147 ms 928 KiB
01_rand_30 AC 999 ms 1048 KiB
01_rand_31 AC 1153 ms 1044 KiB
01_rand_32 AC 906 ms 1048 KiB
01_rand_33 AC 799 ms 1048 KiB
01_rand_34 AC 1054 ms 1052 KiB
01_rand_35 AC 798 ms 1044 KiB
01_rand_36 AC 1002 ms 1048 KiB
01_rand_37 AC 905 ms 1048 KiB
01_rand_38 AC 721 ms 1048 KiB
01_rand_39 AC 1005 ms 1044 KiB
01_rand_40 AC 1147 ms 932 KiB
01_rand_41 AC 1001 ms 1040 KiB
01_rand_42 AC 795 ms 1048 KiB
01_rand_43 AC 1147 ms 1040 KiB
01_rand_44 AC 1005 ms 1052 KiB
01_rand_45 AC 907 ms 1040 KiB
01_rand_46 AC 999 ms 1052 KiB
01_rand_47 AC 1096 ms 1052 KiB
01_rand_48 AC 855 ms 1044 KiB
01_rand_49 AC 914 ms 1044 KiB
99_handmake_00 AC 1147 ms 1044 KiB
99_handmake_01 AC 1145 ms 1048 KiB
99_handmake_02 AC 1147 ms 1024 KiB
99_handmake_03 AC 1147 ms 1036 KiB
99_handmake_04 AC 1146 ms 1036 KiB
99_handmake_05 AC 1144 ms 1044 KiB
99_handmake_06 AC 1146 ms 1036 KiB