zoukankan      html  css  js  c++  java
  • 寻找最大数

     

    寻找最大数

    时间限制:1000 ms  |  内存限制:65535 KB
    难度:2
     
    描述

    请在整数 n 中删除m个数字, 使得余下的数字按原次序组成的新数最大,

    比如当n=92081346718538,m=10时,则新的最大数是9888

     
    输入
    第一行输入一个正整数T,表示有T组测试数据
    每组测试数据占一行,每行有两个数n,m(n可能是一个很大的整数,但其位数不超过100位,并且保证数据首位非0,m小于整数n的位数)
    输出
    每组测试数据的输出占一行,输出剩余的数字按原次序组成的最大新数
    样例输入
    2
    92081346718538 10
    1008908 5
    样例输出
    9888
    98
    分析:第一位尽可能是最大的,结果才可能最大,确定第一位后,第二位也是如此,以此类推;
    需要注意的是,每一位寻找最大数的范围是不一样的
     1 #include<cstdio>
     2 #include<cstring>
     3 
     4 int main()
     5 {
     6  int t,n,i,j,str,k;
     7  char s[103],max;
     8  
     9  scanf("%d",&t);
    10  while(t--)
    11  {
    12   scanf("%s%d",s,&n);
    13   str=strlen(s);
    14   max='0';
    15   for(i=str-n,k=0; i>0; i--)
    16   {
    17      for(j=k;j<=str-i;j++)
    18    if(s[j]>max)
    19    {
    20     max=s[j];
    21     k=j+1;
    22    }
    23     printf("%c",max);
    24    max='0';
    25   }
    26   printf("\n");
    27 
    28  }
    29 return 0;
    30 }
  • 相关阅读:
    条件语句、循环语句
    var、符号运算、条件语句、三元(目)运算、自加和自减
    js的介绍
    浏览器的差距、ie6 ie7 ie8、符号、html css、BFC、
    单位、浏览器、布局、
    z-index、absolute、marquee滚动条的问题
    js数据类型 方法 函数
    js函数
    全局方法或全局属性
    数据类型
  • 原文地址:https://www.cnblogs.com/hpuwangjunling/p/2392104.html
Copyright © 2011-2022 走看看