• 51nod-2499 不降的数字


    水题,用字符串处理,记录开始降位的数位,将该数位的数减一,然后输出9直至最后一位,如果数字首位为1则长度减一。

    #include <iostream>
    #include <cstdio>
    #include <algorithm>
    #include <cstring>
    #include <vector>
    
    using namespace std;
    
    int main()
    {
    	string str;
    	cin>>str;
    	int len=str.length();
    	int flag=0;
    	for(int i=1;i<len;i++)
    		{
    			if(str[i]>=str[i-1])
    				flag++;
    			else
    				break;
    		}
    	if(flag==len-1)
    		{
    			cout<<str<<endl;
    		}
    	else
    		{
    			if(flag==0)
    				{
    					if(str[0]=='1')
    						{
    							for(int i=0;i<len-1;i++)
    								cout<<'9';
    							cout<<endl;
    						}
    					else 
    						{
    							cout<<(str[0]-'1');
    							for(int i=0;i<len-1;i++)
    								cout<<'9';
    							cout<<endl;
    						}
    				}
    			else
    				{
    					for(int i=0;i<flag;i++)
    						cout<<str[i];
    					cout<<(str[flag]-'1');
    					for(int j=flag+1;j<len;j++)
    						cout<<'9';
    					cout<<endl;
    				}
    		}
    	return 0;
    }
  • 相关阅读:
    函数三
    函数二
    函数一
    python数据类型和编码补充
    Python基础数据类型考试题
    VS2017设置C++标准
    std::weak_ptr
    Visual Assist 配色
    JMeter
    fcgi返回状态码
  • 原文地址:https://www.cnblogs.com/BlueDoor1999/p/13301386.html
Copyright © 2020-2023  润新知