zoukankan      html  css  js  c++  java
  • HDU-ACM课堂作业 我要最小整数

    思路:遍历数字中每个元素,当前元素大于右边的元素时将其删去。每当完成一个删除操作时将 从头开始遍历。

    #include <iostream>
    #include <stack>
    #include <cstdlib>
    #include <cstring>
    #include<algorithm>
    #include<math.h>
    #include<queue>
    using namespace std;
    
    int main()
    {
        while(1)
        {
            char str[31];
            scanf("%s", str);
            int de;
            cin>>de;
            int len=0;
            for(int i=0;str[i];i++)
                len++;
            if(de==len)
            {
                cout<<0<<endl;
                continue;
            }
            int i=0;
            //共删除de个元素
            while(de)
            {
                //左边元素大于右边
                if(str[i]>str[i+1])
                {
                    //将所有元素往前一位
                    for(int k=i;k<len;k++)
                    {
                        str[k]=str[k+1];
                    }
                    len--;
                    i=0;
                    de--;
                }
                //如果正常就进入下一个元素
                else
                {
                    i++;
                }
            }
            for(int i=0;i<len;i++)
                cout<<str[i];
            cout<<endl;
        }
    }
  • 相关阅读:
    SQL Server需要监控哪些计数器
    将表里的数据批量生成INSERT语句的存储过程 继续增强版
    [Java]
    [Linux] 安装JBoss
    [Spring]
    [Spring]
    [Maven]
    [Maven]
    [Spring MVC]
    [Spring MVC]
  • 原文地址:https://www.cnblogs.com/DaiShuSs/p/10213808.html
Copyright © 2011-2022 走看看