栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

Codeforces B. Minor Reduction

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Codeforces B. Minor Reduction

 

思路:

注意分类讨论,首先如果选出的两个数加起来小于10,那序列位数减少,值必然变小 ,但相对于这一位来说必然变大(如2+3=5)或者不变(如1+0=1),所以必须让这种情况尽量靠前。如果两个数加起来大于10,那相对于这两位来说必然变小(如2+8=10)或者不变(1+9=10),所以必须让这种情况尽量靠后。由于这两种情况的处理方法是对立的,所以分两种情况,存在加起来大于10的情况和不存在加起来大于10的情况分别讨论。

Code:

#include 
#include 
#include 
#include 
using namespace std;
const int N = 1;

void solve()
{
    string s;
    cin>>s;
    int len=s.size();
    for(int i=len-1;i;i--)
    {
        int now=(s[i]-'0')+(s[i-1]-'0');
        if(now>=10)
        {
            
            s[i]=now%10+'0';
            s[i-1]=now/10+'0';
            cout<>_;
    while(_--) solve();
    return 0;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/717675.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号