当前位置: 首页 > article >正文

区间数位和模板(贪心)

在这里插入图片描述

模板:

#include<bits/stdc++.h>

using namespace std;

typedef long long ll;
typedef pair<ll, ll>PII;
const int N = 2e5 + 10;
const int MOD = 998244353;
const int INF = 0X3F3F3F3F;
const int dx[] = {-1, 1, 0, 0, -1, -1, +1, +1};
const int dy[] = {0, 0, -1, 1, -1, +1, -1, +1};
const int M = 1e6 + 10;


int main()
{
	int t;
	cin >> t;
	while(t --){
		ll l1, l2, r1, r2;
		cin >> l1 >> r1 >> l2 >> r2;
	    //求这种得可以先确定总体得范围
		ll l = l1 + l2, r = r1 + r2;
		string a = to_string(l), b = to_string(r);
		if(a.size() < b.size())
		{
			reverse(a.begin(), a.end());
			while(a.size() < b.size()) a += '0';
			reverse(a.begin(), a.end());
		}
		//让它们得大小一样
		ll ans = 0, res = 0;
		//贪心
	    for(int i = 0; i < (int)a.size(); i ++)
		{
			res += (b[i] - '0');
			if(a[i] < b[i])
			{
			    ans = max(ans, res - 1 + (int)(b.size() - i - 1) * 9);
			}
		}
		ans = max(ans, res);
		cout << ans << endl;
	}
}

http://www.kler.cn/a/395066.html

相关文章:

  • ECharts 实现大屏地图功能
  • LeetCode题解:5.最长回文子串【Python题解超详细,中心拓展、动态规划、暴力解法】
  • C++中的std::tuple和std::pair
  • Qt_day4_Qt_UI设计
  • MybatisPlus入门(十)MybatisPlus-逻辑删除和多记录操作
  • 前端神经网络入门(三):深度学习与机器学习的关系、区别及核心理论支撑 - 以Brain.js示例
  • ROS Action
  • SQL 注入详解:原理、危害与防范措施
  • Oracle 11g rac 集群节点的修复过程
  • 通过脚本,发起分支合并请求和打tag
  • 【贪心算法】贪心算法三
  • 【HAProxy07】企业级反向代理HAProxy高级功能之Cookie 会话保持与HAProxy 状态页
  • 计算机网络——路由选择算法
  • 校园二手交易网站毕业设计基于SpringBootSSM框架
  • Invar-RAG:基于不变性对齐的LLM检索方法提升生成质量
  • 初识Linux · 信号产生
  • 通过Python 调整Excel行高、列宽
  • 技术栈1:nginx基础入门
  • 计算机网络——1.1计算机网络概述
  • Bugku CTF_Web——点login咋没反应
  • 技术前沿:从强化学习到Prompt Engineering,业务流程管理的创新之路
  • 第十九周:机器学习
  • 在Linux中使用Nginx和Docker进行项目部署
  • 【mysql】explain执行计划的各个参数
  • C# Winform--SerialPort串口通讯(ASCII码发送)
  • linux 能显式修改文件的最后一次访问时间和文件内容最后被修改的时间,不能显式修改文件状态最后被改变的时间,为什么