zoukankan      html  css  js  c++  java
  • poj2718 Smallest Difference

    思路:

    暴力乱搞。

    实现:

     1 #include <iostream>
     2 #include <cstdio>
     3 #include <sstream>
     4 #include <algorithm>
     5 #include <vector>
     6 #include <cmath>
     7 using namespace std;
     8 
     9 const int INF = 0x3f3f3f3f;
    10 
    11 bool in[10];
    12 int t, n, num[10];
    13 string s;
    14 stringstream ss;
    15 int minn = INF;
    16 
    17 int main()
    18 {
    19     cin >> t;
    20     getchar();
    21     while (t--)
    22     {
    23         getline(cin, s);
    24         ss.clear();
    25         n = 0;
    26         minn = INF;
    27         ss << s;
    28         while (ss >> num[n++]);
    29         n--;
    30         if (n == 2)
    31         {
    32             cout << abs(num[0] - num[1]) << endl;
    33             continue;
    34         }
    35         do
    36         {
    37             int x = 0, y = 0, z = 0;
    38             for (int i = 0; i < n / 2; i++)
    39             {
    40                 x += num[i];
    41                 if (i != n / 2 - 1)
    42                     x *= 10;
    43             }
    44             for (int i = n / 2; i < n; i++)
    45             {
    46                 y += num[i];
    47                 if (i != n - 1)
    48                     y *= 10;
    49                 if (i == n / 2)
    50                     continue;
    51                 z += num[i];
    52                 if (i != n - 1)
    53                     z *= 10;
    54             }
    55             if (!(n > 3 && num[0] == 0 || num[n / 2] == 0))
    56                 minn = min(minn, abs(x - y));
    57             if (n & 1 && !(num[0] == 0 || n > 3 && num[n / 2 + 1] == 0))
    58                 minn = min(minn, abs(x * 10 + num[n / 2] - z));
    59         } while (next_permutation(num, num + n));
    60         cout << minn << endl;
    61     }
    62     return 0;
    63 }
  • 相关阅读:
    B+树实现
    一些比较特殊的计数序列
    codeforce刷题(六)
    codeforces刷题(五)
    Swap and Flip
    leetcode刷题(三)
    leetcode刷题(二)
    leetcode刷题(一)
    C语言学习笔记-变量存储
    水笔记
  • 原文地址:https://www.cnblogs.com/wangyiming/p/6581993.html
Copyright © 2011-2022 走看看