首页 > 其他分享 >Codeforces Round 748 (Div. 3) B. Make it Divisible by 25

Codeforces Round 748 (Div. 3) B. Make it Divisible by 25

时间:2023-10-14 15:56:09浏览次数:27  
标签:25 00 748 Make 移除 50 75 ans

给一个正整数 \(n\) ,在一步操作中可以移除 \(n\) 中的一个。当 \(n\) 只剩下一位时将不能再操作,如果过程中产生了前导 \(0\) ,则会被自动移除且不耗费操作次数。

询问最少需要多少次操作可以使得 \(n\) 被 \(25\) 整除。

显然一个正整数 \(x\) 若可以被 \(25\) 整除,只需要考虑最后两位。为 \(00\)、\(25\)、\(50\)、\(75\) 。此题不需要考虑前导零的处理。

于是枚举 \(00\)、\(25\)、\(50\)、\(75\) 之一。令为 \(s_i\) ,第一、二个字符为 \(s_{i_1}\) 和 \(s_{i_2}\) 。

定义初始的 \(length(n) = m\) 。

于是考虑一个算法,让指针 \(i\) 从 \(m\) 开始往前扫,当找到 \(s_{i_{l}}\) 时,\(l--\) 。当 \(l = -1\) ,\(ans = min(ans, m - i - 1)\) 并结束扫描。所有枚举结束后的 \(min\_ans\) 即答案。

view
#include <bits/stdc++.h>
typedef long long ll;
char need[][3] = {"00", "25", "50", "75"};
void solve(){
	std::string s; std::cin >> s; int m = s.length(); s = " " + s;
	int ans = 1 << 30;
	for (int k = 0; k < 4; k++) {
		int l = 1;
		for (int i = m; i; --i) {
			if (s[i] == need[k][l]) l--;
			if (l == -1) {
				ans = std::min(ans, m - i - 1);
				break;
			}
		}
	}
	std::cout << ans << "\n";
}
int main() {
	int _ = 1; std::cin >> _;
	while (_--) {solve();}
	return 0;
}

标签:25,00,748,Make,移除,50,75,ans
From: https://www.cnblogs.com/zsxuan/p/17764265.html

相关文章

  • 20211325 2023-2024-1 《信息安全系统设计与实现(上)》第五周学习笔记
    202113252023-2024-1《信息安全系统设计与实现(上)》第五周学习笔记一、任务要求自学教材第11章,提交学习笔记(10分),评分标准如下:1.知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图,提示过程参考下面内容(4分)“我在学***X知......
  • GBJ2510-ASEMI电源控制柜专用GBJ2510
    编辑:llGBJ2510-ASEMI电源控制柜专用GBJ2510型号:GBJ2510品牌:ASEMI封装:GBJ-4恢复时间:>50ns正向电流:25A反向耐压:1000V芯片个数:4引脚数量:4类型:整流桥、功率整流器件特性:功率整流器件、高性能整流桥浪涌电流:350A正向压降:1.05V封装尺寸:如图工作温度:-55°C~150°CGBJ2510特性超快速切换,实现......
  • Some seqs are too long, please rebuild the program with make parameter MAX_SEQ=n
     001、cd-hit报错如下Someseqsaretoolong,pleaserebuildtheprogramwithmakeparameterMAX_SEQ=new-maximum-length(e.g.makeMAX_SEQ=10000000) 002、解决方法重新编译该软件:(base)[[email protected]]$makeMAX_SEQ=10000000......
  • GBJ2510-ASEMI电源控制柜专用GBJ2510
    编辑:llGBJ2510-ASEMI电源控制柜专用GBJ2510型号:GBJ2510品牌:ASEMI封装:GBJ-4恢复时间:>50ns正向电流:25A反向耐压:1000V芯片个数:4引脚数量:4类型:整流桥、功率整流器件特性:功率整流器件、高性能整流桥浪涌电流:350A正向压降:1.05V封装尺寸:如图工作温度:-55°C~150°CGBJ2510......
  • P2595 [ZJOI2009] 多米诺骨牌
    轮廓线DP+外部容斥。似乎是CDQ论文题。有一个\(n\timesm\)的矩形表格,其中有一些位置有障碍。现在要在这个表格内放一些\(1\times2\)或者\(2\times1\)的多米诺骨牌,使得任何两个多米诺骨牌没有重叠部分,任何一个骨牌不能放到障碍上。并且满足任何相邻两行之间都有至少......
  • 如何让cmake找到boost库
    title:aliases:tags:-cmake-boostcategory:-方法stars:url:creation-time:2023-10-1309:46modification-time:2023-10-1411:00:47在此之前,我们已经[[使用mingw-w64编译Boost]]。然后,我们来编写项目的CMakeList文件。定义好关键的变量:set(BOOST......
  • 用户态app Makefile 简易示例模板
    #Makefileforuser-spaceprogramexportPATH=/opt/toolchain/aarch64/bin/:$PATHCC:=aarch64-none-linux-gnu-gccDIR_PATH:=/home/user/sdk-v22.04/test_makefileOTHER_DUND_DIR:=$(DIR_PATH)/test_file_cOTHER_DUND_H:=$(DIR_PATH)/test_file_hCFLAGS:=-......
  • Laravel artisan命令-make:model(创建模型类)
    描述创建新的Eloquent模型类命名规则驼峰命名,类文件名必须为数据库表名「单数」,如:app/Models/User.php用法模型通常位于app\Models目录中,如果app下没有Models目录,可以在模型前添加Models目录。有app\Models目录phpartisanmake:modelUsers无app\Models目录......
  • CF713E Sonya Partymaker
    其实做题可以先算法导向一下的。比如看到显著特征:【最大值最小】,我们第一反应还是应该为二分答案转判定的。考虑二分答案\(d\),此时转化为了,对于每个人\(i\),选择一个朝向左/右,向该朝向覆盖\(d\)的距离,能否将整个环全部覆盖。如果不是环的话,很lantern啊!考虑序列情况,设\(dp......
  • AP5125 DC-DC降压恒流IC SOT23-6 过认证 9-100V 6A电源驱动线路图
    1,产品描述 AP5125是一款外围电路简单的Buck型平均电流检测模式的LED恒流驱动器,适用于8-100V电压范围的非隔离式大功率恒流LED驱动领域。芯片采用固定频率140kHz的PWM工作模式,利用平均电流检测模式,因此具有优异的负载调整率特性,高精度的输出电流特性。AP51......