首页 > 其他分享 >[CSP-S 2023] 密码锁

[CSP-S 2023] 密码锁

时间:2023-12-13 17:56:34浏览次数:31  
标签:return int sum 枚举 2023 密码锁 CSP

[CSP-S 2023] 密码锁

考场上我跟个 \(somebody\) 一样,一看就想:一眼乘法原理,乱搞写一下就出来了。

当时我还算了一下暴力好像也不会超时,结果,每天在 yz 日以继日的颓废考试经验,我断定 CSP-S 是不会考这么 \(!\) 复杂的题目的,结果暴力出奇迹,就是枚举模拟。

考试后,一看wc枚举,我断定我就是 sb

思路

暴力出省一

结论是如果所枚举的密码,和任何一个给定密码相同那么不可累加,变一个密码很好判断,只要看枚举的与给定是否只有一个不同。两个呢?发现变两个时,两个值 $a_i \equiv a_{i + 1} \operatorname{mod}10 $ 那么就可以写出一下代码

#include <bits/stdc++.h>
using namespace std;
int a[10][7], sum[7];
int n;
bool check(int _1, int _2, int _3, int _4, int _5){
	for(int i = 1; i <= n; i++){
		if(_1 == a[i][1] && _2 == a[i][2] && _3 == a[i][3] && _4 == a[i][4] && _5 == a[i][5])return 0;
		sum[1] = (a[i][1] - _1 + 10) % 10, sum[2] = (a[i][2] - _2 + 10) % 10, sum[3] = (a[i][3] - _3 + 10) % 10, sum[4] = (a[i][4] - _4 + 10) % 10, sum[5] = (a[i][5] - _5 + 10) % 10;
		int cnt = 0;
		for(int j = 1; j <= 5; j++){
			if(sum[j] == 0)continue;
			cnt++;
			if(cnt >= 3)return 0;
			if(cnt == 2){
				if(sum[j] != sum[j - 1])return 0;
			}
		}
	}
	return 1;
}

int main() {
	
	cin >> n;
	for(int i = 1; i <= n; i++)
		for(int j = 1; j <= 5; j++)
			cin >> a[i][j];
	long long ans = 0;
	for(int _1 = 0; _1 <= 9; _1++){
		for(int _2 = 0; _2 <= 9; _2++){
			for(int _3 = 0; _3 <= 9; _3++){
				for(int _4 = 0; _4 <= 9; _4++){
					for(int _5 = 0; _5 <= 9; _5++){
					    ans += check(_1, _2, _3, _4, _5);
					}
				}
			}
		}
	}
	cout << ans;
  return 0;
}

标签:return,int,sum,枚举,2023,密码锁,CSP
From: https://www.cnblogs.com/lightstarup/p/17899614.html

相关文章

  • 2023.12.13日报
    最近事情比较多,写日报也有点怠惰了,主要是偶尔会忘记,简单总结一下这两天的工作首先是使用jfinal做大作业,实话说这玩意一开始我觉得并不好用,因为页面也很简陋,后端也有点看不懂但是在实际体验并且调用百度翻译和图像处理的api后,感觉用起来还可以,其实和springboot有点类似现在是已......
  • Solution Set 2023.12.13
    CF1736ESwapandTake设在第\(i\)次操作后产生贡献的值为初始序列的\(a_{p_i}\),可以发现产生的贡献的指针移动方式为每次向后移动\(1\),而通过交换数字最多可以使得某个数字每次向后移动\(1\),由此可以得出每次产生贡献的位置单调不减,即\(p_1\lep_2\le\cdots\lep_n\)......
  • 【2023-12-12】家庭分工
    20:00人们说得好,在耕种多年的田地里,一年又一年长出新的谷子;完全可以相信“从读过的旧书里”人们也一定能学到新的知识。                                                ......
  • 尊嘟假嘟?2023年人工智能行业新诞生10家独角兽,AIGC竟占近一半
    今年的AIGC持续热了一年,从王慧文等大佬的入局,到百度发布「文心一言」,各大巨头纷纷发布大模型产品,切实地给中国人工智能赛道的融资添了一把浓烈的火。回顾这即将过去的一整年,虽然2023年投融资整体行业遇冷,各种坏消息不断,但总体而言,AI行业融资的形势相对仍处于比较热门的状态。2......
  • 热烈祝贺2023才聚PMP发展论坛成功举行!
    12月10日,2023才聚PMP发展论坛在深圳成功举行!此次论坛由才聚主办,聚焦PMP发展前沿动态以及项目经理职业发展,吸引了近千名项目管理大咖齐聚一堂,共同展望PMP美好发展未来。大会现场座无虚席1大会团队精心筹备打造完美参会体验才聚对本次论坛高度重视,在筹备之初,就明确了要将论坛打造为项......
  • 2023十大优质国产原厂品牌网络评选活动!
    助力国产替代,振兴中国芯片!“道合顺2023十大优质国产原厂品牌网络评选”正式开启~投票有机会抽中国黄金金条、华为Mate60手机,小米扫地机器人等壕礼~!戳>https://www.icdhs.com/activity/brandvote2023/?source=51......
  • F. 纪念品 - 2023HBUCM程序设计竞赛/CSP-J2019
    题面小伟突然获得一种超能力,他知道未来\(T\)天\(N\)种纪念品每天的价格。某个纪念品的价格是指购买一个该纪念品所需的金币数量,以及卖出一个该纪念品换回的金币数量。每天,小伟可以进行以下两种交易无限次:任选一个纪念品,若手上有足够金币,以当日价格购买该纪念品;卖出持有的......
  • 20231213matlab问题资料汇总
    https://bbs.csdn.net/topics/390064770https://www.ilovematlab.cn/forum.php?mod=viewthread&tid=455375&_dsign=7812fb23https://blog.csdn.net/fmber/article/details/85858771https://www.mathworks.com/help/dotnetbuilder/MWArrayAPI/html/T_MathWorks_MATL......
  • 2023最新中级难度Redis面试题,包含答案。刷题必备!记录一下。
    好记性不如烂笔头内容来自面试宝典-中级难度Redis面试题合集问:请解释Redis中的持久化机制RDB和AOF的区别,并谈谈你在实际应用中的选择。Redis的两种持久化机制分别为RDB和AOF:RDB(RedisDatabase)是Redis默认的持久化方式,会在指定的时间间隔内将内存中的数据集快照写入磁盘......
  • 2023年11月国产数据库大事记-墨天轮
    本文为墨天轮社区整理的2023年11月国产数据库大事件和重要产品发布消息。目录11月国产数据库大事记TOP1011月国产数据库大事记(时间线)产品/版本发布兼容认证代表厂商大事记厂商活动排行榜新增数据库11月国产数据库大事记TOP10 11月国产数据库大事记(时间线)11月1......