Submission #70962185


Source Code Expand

#include <bits/stdc++.h>

#include <atcoder/all>

using namespace std;
using namespace atcoder;

#define int long long
#define ALL(x) (x).begin(), (x).end()
#define MAX(x) *max_element(ALL(x))
#define MIN(x) *min_element(ALL(x))

typedef pair<int, int> PI;
typedef pair<int, pair<int, int>> PII;
static const int INF = 1010000000000000017LL;
static const double eps = 1e-12;
static const double pi = 3.14159265358979323846;
static const int dx[4] = {1, -1, 0, 0};
static const int dy[4] = {0, 0, 1, -1};
static const int ddx[8] = {1, -1, 0, 0, 1, 1, -1, -1};
static const int ddy[8] = {0, 0, 1, -1, 1, -1, 1, -1};

template <class T>
inline bool chmin(T& a, T b) {
    if (a > b) {
        a = b;
        return true;
    }
    return false;
}
template <class T>
inline bool chmax(T& a, T b) {
    if (a < b) {
        a = b;
        return true;
    }
    return false;
}

signed main() {
    string S;
    cin >> S;
    vector<int> A;
    for (int i = 0; i < S.size(); ++i) {
        A.push_back(S[i] - '0');
    }
    int ans = INF;
    sort(A.begin(), A.end());
    do {
        if (A[0] == 0) {
            continue;
        }
        string tmp = "";
        for (int i = 0; i < A.size(); ++i) {
            tmp += A[i] + '0';
        }
        int res = stol(tmp);
        chmin(ans, res);
    } while (std::next_permutation(A.begin(), A.end()));
    cout << ans << endl;
}

Submission Info

Submission Time
Task B - Permute to Minimize
User tsuyosshi
Language C++23 (GCC 15.2.0)
Score 200
Code Size 1440 Byte
Status AC
Exec Time 1 ms
Memory 3692 KiB

Compile Error

./Main.cpp: In function 'int main()':
./Main.cpp:44:23: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   44 |     for (int i = 0; i < S.size(); ++i) {
      |                     ~~^~~~~~~~~~
./Main.cpp:54:27: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   54 |         for (int i = 0; i < A.size(); ++i) {
      |                         ~~^~~~~~~~~~

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 200 / 200
Status
AC × 3
AC × 17
Set Name Test Cases
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_test_00.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 1 ms 3616 KiB
00_sample_01.txt AC 1 ms 3640 KiB
00_sample_02.txt AC 1 ms 3584 KiB
01_test_00.txt AC 1 ms 3572 KiB
01_test_01.txt AC 1 ms 3592 KiB
01_test_02.txt AC 1 ms 3584 KiB
01_test_03.txt AC 1 ms 3408 KiB
01_test_04.txt AC 1 ms 3644 KiB
01_test_05.txt AC 1 ms 3620 KiB
01_test_06.txt AC 1 ms 3552 KiB
01_test_07.txt AC 1 ms 3644 KiB
01_test_08.txt AC 1 ms 3684 KiB
01_test_09.txt AC 1 ms 3528 KiB
01_test_10.txt AC 1 ms 3528 KiB
01_test_11.txt AC 1 ms 3692 KiB
01_test_12.txt AC 1 ms 3448 KiB
01_test_13.txt AC 1 ms 3656 KiB