• 4906 删数问题


    4906 删数问题

     

     时间限制: 1 s
     空间限制: 2000 KB
     题目等级 : 黄金 Gold
     
    题目描述 Description

      键盘输入一个高精度的正整数N,去掉其中任意S个数字后剩下的数字按原左右次序将组成一个新的正整数。编程对给定的N 和S,寻找一种方案使得剩下的数字组成的新数最小。 

      输入数据均不需要判错。 

      输出组成的新的正整数。(N不超过240位)

    输入描述 Input Description

    第一行,输入一正整数N(N<=10240),表示要删的数;

    第二行,输入一正整数S,表示删去的个数,当然S小于N的位数。

    输出描述 Output Description

    仅一行,输出删数后形成的最小数。

    样例输入 Sample Input

    【1】

    5768

    1

    【2】

    8796542

    4

    样例输出 Sample Output

    【1】

    568

    【2】

    542

    数据范围及提示 Data Size & Hint

    1<=N<=10240

    1<=S<=239

    注意开头的0应略去!![要小心]

     1 #include <iostream>
     2 #include <cstdio>
     3 #include <cstring>
     4 using namespace std;
     5 char a[100001];
     6 int b[100001];
     7 bool flag;
     8 int main() {
     9     long long  n,i,j,l,k;
    10     gets(a);
    11     cin>>n;
    12     l=strlen(a);
    13     for(i=1;i<=n;i++)
    14     {
    15         for(j=0;j<l-1;j++)
    16             if(a[j]>a[j+1]) 
    17             {
    18                 for(k=j;k<l-1;k++)
    19                 a[k]=a[k+1];
    20                 break;
    21             }
    22         l--;
    23     }
    24     for(i=0;i<=l-1;i++)
    25     {
    26         if(a[i]!='0')
    27         flag=true;
    28         if(flag)
    29         cout<<a[i];
    30     }
    31     return 0;
    32 }
  • 相关阅读:
    Windows 8实例教程系列 开篇
    qt 开发发布于 windeploy.exe
    qt qoci 测试验证
    vmware vmx 版本不兼容
    qt oracle
    vc qt dll
    QOCIDriver unable to create environment
    qoci 编译完 放置位置 具体根据情况
    calling 'lastError' with incomplete return type 'QSqlError' qsqlquer
    Hbase 操作工具类
  • 原文地址:https://www.cnblogs.com/sssy/p/6754330.html
Copyright © 2020-2023  润新知