首页 > 其他分享 >Add Modulo 10(数论,思维,数学,规律)

Add Modulo 10(数论,思维,数学,规律)

时间:2023-06-20 11:56:31浏览次数:39  
标签:10 Modulo k% 尾数 int Add 20 i%

思路:找规律
情况一: 尾数为5或0

为5时进行一次操作变成0的情况。
而尾数是 0 时操作无意义,所有数必须相等。
情况二:尾数为 1,3,7,9
可进行一次操作变成情况三。
情况三:尾数为 2,4,6,8
我们通过找规律发现:

2⇒4⇒8⇒16⇒22
4⇒8⇒16⇒22⇒24
6⇒12⇒14⇒18⇒26
8⇒16⇒22⇒24⇒28

 

每个数可以转换为它自己 +20 的数,我们可以让每个数加足够多的 20,所以不妨  mod20 再进行比较。

而我们把尾数统一(比如都变成 2)之后,2 和 12 再也不能变成相同的了,所以这时全相等就相当于符合要求。

可以开$set$来进行判断:

//Add Modulo 10:https://www.luogu.com.cn/problem/CF1714E
#include<bits/stdc++.h>
using namespace std;
const int N=2e5+10;
int res,n,m,k,t;
set<int>s;
int main()
{
    cin>>t;
    while(t--){
        cin>>n;
        s.clear();
        for(int i=0;i<n;i++){
            cin>>k;
            if(k%2) k=k+k%10;
            if(k%10) k=k%20;
            s.insert(k);
        }
        set<int>p;
        for(auto i:s)
        {
            if(i%10!=0){
                if(i%10==4) i=(i+18)%20;
                else if(i%10==6) i=(i+6)%20;
                else if(i%10==8) i=(i+14)%20;
            }
            p.insert(i);
        }
        if(p.size()==1) cout<<"YES"<<endl;
        else cout<<"NO"<<endl;
    }
    return 0;
}

 

标签:10,Modulo,k%,尾数,int,Add,20,i%
From: https://www.cnblogs.com/o-Sakurajimamai-o/p/17493244.html

相关文章

  • 20230410 java.util.HashMap
    问题第一部分,基础入门:1.数组的优势/劣势2.链表的优势/劣势3.有没有一种方式整合两种数据结构的优势?散列表4.散列表有什么特点?5.什么是哈希?第二部分,HashMap原理讲解:1.HashMap的继承体系是什么样的?2.Node数据结构分析?3.底层存储结构介绍?4.put数据原理分析?5.什么是Hash碰......
  • 20230410 11.2. 散列函数的构造方法
    一个“好”的散列函数一般应考虑下列两个因素:计算简单,以便提高转换速度;关键词对应的地址空间分布均匀,以尽量减少冲突。数字关键词的散列函数构造直接定址法取关键词的某个线性函数值为散列地址,即\(h(key)=a*key+b(a、b为常数)\)除留余数法散列函数为:\(h(key)......
  • 20230410 11.3. 冲突处理方法
    处理冲突的方法开放地址法:换个位置链地址法:同一位置的冲突对象组织在一起散列表查找性能分析成功平均查找长度(ASLs)不成功平均查找长度(ASLu)开放定址法(OpenAddressing)一旦产生了冲突(该地址已有其它元素),就按某种规则去寻找另一空地址若发生了第i次冲突,试探的下一......
  • 20230410 11.4. 散列表的性能分析
    平均查找长度(ASL)用来度量散列表查找效率:成功、不成功关键词的比较次数,取决于产生冲突的多少影响产生冲突多少有以下三个因素:散列函数是否均匀;处理冲突的方法;散列表的装填因子α开放地址法:散列表是一个数组,存储效率高,随机查找。散列表有“聚集”现象分离链法:散列......
  • PTA_乙级_1015 德才论(C++_模拟_快排)
    宋代史学家司马光在《资治通鉴》中有一段著名的“德才论”:“是故才德全尽谓之圣人,才德兼亡谓之愚人,德胜才谓之君子,才胜德谓之小人。凡取人之术,苟不得圣人,君子而与之,与其得小人,不若得愚人。”现给出一批考生的德才分数,请根据司马光的理论给出录取排名。输入格式:输入第一行给出3个......
  • 历经九九八一难,装好的fbprophet:win10 + conda
    第一步:先装好anaconda,过程不再赘述。第二步:用conda新建虚拟环境:condacreate--namepy38python=3.8,然后激活新建的环境:conda activatepy38。第三步:装pystan:condainstallpystan,因为fbprophet依赖pystan。如果没有plotly包,也可装一下,condainstallplotly-y,画图会用到。第......
  • 华大电子MCU CIU32M010、CIU32M030嵌入式闪存及中断和事件
    1.嵌入式闪存1.1模块介绍CIU32M010、CIU32M030集成了嵌入式FLASH控制模块,该模块控制FLASH的擦除、编程以及读取数据。上电时会从FLASH中读取相关数据进行校验以及初始化配置,保证芯片程序在正确且安全的情况下运行。1.2功能特点•支持高达64K主闪存空间的FLASH•......
  • WIN10系统盘清理
    系统盘清理,除了常规的软件卸载,不安装到系统盘,发现下面的目录占用是相当夸张的,尽量移动到其他盘去C:\ProgramData\Microsoft\VisualStudio\PackagesC:\ProgramData\MySQL\MySQLInstallerforWindowsC:\ProgramData\PackageCacheC:\Users\pc\AppData\Local\TempC:\Users\pc......
  • 从零开始学Python第10课:常用数据结构之元组
    前面的两节课,我们为大家讲解了Python中的列表,它是一种容器型的数据类型,通过列表类型的变量,我们可以保存多个数据并通过循环实现对数据的批量操作。当然,Python中还有其他容器型的数据类型,接下来我们就为大家讲解另一种容器型的数据类型,它的名字叫元组(tuple)。元组的定义和运算在P......
  • 这里提供了一个基于STM32F103系列单片机的项目工程文件,其中包含了STM32 PLC底层源码和
    这里提供了一个基于STM32F103系列单片机的项目工程文件,其中包含了STM32PLC底层源码和FX2N源码。底层源码实现了断电保持功能,并且适合初学者,因为有很多注释解释了三菱指令编码。这个项目需要使用KeilMDK4.7以上的版本进行编译,CPU需要是STM32F103,RAM内存至少为64K,Flash程序空间至......