Educational Codeforces Round 135 (Rated for Div. 2)C. Digital Logarithm(思维)

文章目录

题目链接

C. Digital Logarithm

题意

给两个长度位 n n n的数组 a a a、 b b b,一个操作 f f f

定义操作 f f f为, a i = f ( a i ) = a i ai=f(ai)=ai ai=f(ai)=ai的位数

求最少多少次操作可以使 a 、 b a、b a、b两个数组变得完全相同

题解

性质:

对于任何数,经过两次操作我们一定可以让其变为 1 1 1,所以答案小于等于 2 n 2n 2n

然后我们考虑如何求最少的操作次数,很自然的去考虑贪心,对于相同的数我们不去操作,只取操作不同的数,这些不同的数一定需要进行一次操作,然后操作完一次之后所有的数都被限制到 1 , 9 1,9 1,9之内,我们只需要统计 2 , 9 2,9 2,9之内的数还需要操作几次即可。

代码

cpp 复制代码
#include <bits/stdc++.h> 
#define int long long
#define rep(i,a,b) for(int i = (a); i <= (b); ++i)
#define fep(i,a,b) for(int i = (a); i >= (b); --i)
#define pii pair<int, int>
#define pll pair<long long, long long>
#define ll long long
#define db double
#define endl '\n'
#define x first
#define y second
#define pb push_back

using namespace std;
const int N=1e5+10;


void solve()
{
	string s;cin>>s;
	if(s.find('0')!=s.npos){
		cout<<"YES"<<endl;
		cout<<0<<endl;
		return;
	}
	rep(i,0,s.size()-1){
		rep(j,i+1,s.size()-1){
			rep(k,j+1,s.size()-1){
				int a=s[i]-'0',b=s[j]-'0',c=s[k]-'0';
				if((a*100+b*10+c)%8==0){
					cout<<"YES"<<endl;
					cout<<s[i]<<s[j]<<s[k]<<endl;
					return;
				}
			}
			int a=s[i]-'0',b=s[j]-'0';
			if((a*10+b)%8==0){
				cout<<"YES"<<endl;
				cout<<s[i]<<s[j]<<endl;
				return;
			}
		}
		int c=s[i]-'0';
		if(c%8==0){
			cout<<"YES"<<endl;
			cout<<s[i]<<endl;
			return;
		}
	}
	cout<<"NO"<<endl;
}

signed main(){
	ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
//   	freopen("1.in", "r", stdin);
  	int _;
//	cin>>_;
//	while(_--)
	solve();
	return 0;
}
相关推荐
半亩码田3 分钟前
C#转Python第4.4篇:JSON 处理:json 模块 vs System.Text.Json
python·c#·json
南大白5 分钟前
IDEA Maven+JDK 全局配置 日志记录
java·maven·intellij-idea
SelectDB技术团队12 分钟前
统一全文检索与 SQL 分析:Apache Doris 日志分析实践
大数据·数据结构·后端·python·全文检索·doris·日志分析
程序员贺加贝14 分钟前
报表大-IN-优化-一条-product_profile-超大-IN-SQL-背后的报表任务治理
java·spring boot·sql·性能优化·架构
霸道流氓气质20 分钟前
Spring AI多模型路由与动态切换
java·后端·spring
心中有你021421 分钟前
Python爬虫实战:京东商品数据爬取+可视化分析
开发语言·爬虫·python
艺杯羹22 分钟前
全栈信创落地实录:基于银河麒麟V10与达梦数据库DM8的SpringBoot工业级适配指南
java·数据库·spring boot·后端·spring
水饺编程1 小时前
第5章,[Win32 章节] :练习程序,BigFontPic
c语言·c++·windows·visual studio
jay神2 小时前
2026年YOLO还有哪些创新点可以做?
python·yolo·毕业设计·科研·课程设计·创新