摘要

题目链接 难度等级 完成状态 完成分数 最后编辑时间 失误原因(初次提交分数)
Chewbaсca and Number ★☆☆☆☆ 答案正确 100 2015-02-25 16:13:49 题目看错(0)

题意

给一个大数,每一位k_i可以变成9-k_i也可以不变,问最后最小能变成多少。

题解

  • >=5就变,第一位如果是9不变,特判一下就好了……

原来理解错了,以为开头是9就变成0消掉……

代码

514A.cpp代码已折叠
展开折叠内容
#include<cstdio>
#include<iostream>
#include<string>
#include<vector>
#include<iomanip>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<bitset>
#include<set>
#include<sstream>
using namespace std;
#define llu unsigned long long
#define lld long long
#define ci const lld&
#define sqr(x) ((x)*(x))
#define dsi(n) lld n;scanf("%lld",&n)
#define si(n) scanf("%lld",&n)
#define f(i,n) for(lld i=1;i<=n;++i)
#define fi(n) f(i,n)
#define f0(i,n) for(lld i=0;i!=n;++i)
#define fd(i,n) for(lld i=n;i>=1;--i)
#define foreach(i,s) for(typeof(s.begin()) i=s.begin();i!=s.end();++i)
#define rforeach(i,s) for(typeof(s.rbegin()) i=s.rbegin();i!=s.rend();++i)
#define x first
#define y second
int main()
{
        string s;
        cin>>s;
        foreach(i,s)
        {
            if(*i>='5')
                *i='0'+9-(*i-'0');
            if(i==s.begin()&&*i=='0')
                *i='9';
        }
        cout<<s;
        return 0;
}

著作权声明[编辑]

关于[编辑]