题解:AT_abc407_c [ABC407C] Security 2

思路

首先直接用搜索做是会超时的。

首先你至少要按 s 的长度次按钮保证长度达到。

那么我们考虑用一个变量 t,反过来遍历 s 来求出集体加的最少次数。

c = t \\bmod 10,如果 c 小于当前的 s_i,那么 t 就加上 t-c,否则就加上 t-c+10

最后答案就是 t 加上 s 的长度。

代码

```cpp

#include <bits/stdc++.h>

using namespace std;

int main(){

string s;

cin >> s;

long long tt = 0;

for (long long i = s.size() - 1; i >= 0; i -- ){

long long t = s[i] - '0';

long long c = tt % 10;

long long cc;

if (c <= t){

cc = tt - c + t;

}

else{

cc = tt - c + 10 + t;

}

tt = cc;

}

cout << tt + s.size();

return 0;

}

```

相关推荐
牛奔7 分钟前
Go 如何避免频繁抢占?
开发语言·后端·golang
寻星探路4 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
lly2024066 小时前
Bootstrap 警告框
开发语言
2601_949146536 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
你撅嘴真丑6 小时前
第九章-数字三角形
算法
曹牧6 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
KYGALYX6 小时前
服务异步通信
开发语言·后端·微服务·ruby
uesowys6 小时前
Apache Spark算法开发指导-One-vs-Rest classifier
人工智能·算法·spark
zmzb01036 小时前
C++课后习题训练记录Day98
开发语言·c++
ValhallaCoder7 小时前
hot100-二叉树I
数据结构·python·算法·二叉树