首页 > 其他分享 >Unintresting Number(数论)

Unintresting Number(数论)

时间:2024-12-18 21:20:05浏览次数:3  
标签:... cnt temp 数论 sum Number -- Unintresting 数位

链接:http://10.160.111.129/p/2582?tid=675966394f6a59fedf02b3dd

  • 题意:给你一个位数非常大的数,你可以随意改变在某一数位上的数字2或者3,使其相对应变为4或9,问你能不能变出来一个能被9整除,即是9的倍数的数。

  • 前置知识:
    对于9的倍数:任何数可以表示为10000....00a1+1000...0a2+.....+10a(n-1)+a(n) (a1,a2,....a(n)为每个数位上的数字)
    因为1000...00=9999..99+1
    所以可以表示为999...99
    a1+99...9a2+......+9a(n-1)//前面一部分能被9整除 + (a1+a2+...+a(n))
    只要数位加起来总和能被9整除,那这个数就是9的倍数
    也就是题目要求的数

  • 思路:
    我们先设置一个temp变量,将其加工为比n各数位之和sum大一点的9的倍数,然后通过2->4,3->9的操作 将sum 分别进行若干次的+2,+6操作
    看sum能否加工为temp

  • 注意:
    当temp-sum的差值为奇数时 要将其再加9变为偶数 (当然不能减9 因为你只能让sum+2或+6)
    先+6,再+2(因为+2比+6更加灵活)
    temp-sum的差值最多也就为18(其实取值就是为 0 , 2,4,6,8,10,12,14,16,18)

#include<bits/stdc++.h>
using namespace std;

signed main()
{
int t;
cin>>t;
while(t--)
{
	int cnt[2]={0,0};
	long long sum=0;
	string n;cin>>n;
	for(int i=0;i<n.size();i++)
	{
		if(n[i]=='2')cnt[0]++;
		if(n[i]=='3')cnt[1]++;
		sum+=n[i]-'0';
	}
	int temp=9;
	while(sum>temp)
	{
		temp+=9;
	}
	sum=temp-sum;
	if(sum%2==1)sum+=9;
	while(cnt[1]&&sum>=6)
	{
		cnt[1]--;
		sum-=6;
	}
	while(cnt[0]&&sum>=2)
	{
		cnt[0]--;
		sum-=2;
	}
	if(sum==0)cout<<"YES"<<endl;
	else cout<<"NO"<<endl;
}
	return 0;
}

标签:...,cnt,temp,数论,sum,Number,--,Unintresting,数位
From: https://www.cnblogs.com/benscode/p/18615866

相关文章

  • USACO备考冲刺必刷题 | P1467 Runaround Numbers
    学习C++从娃娃抓起!记录下USACO(美国信息学奥赛)备考学习过程中的题目,记录每一个瞬间。附上汇总贴:USACO备考冲刺必刷题|汇总-CSDN博客【题目描述】循环数是那些不包括0且没有重复数字的整数(比如81362)并且还应同时具有一个有趣的性质,就像这个例子:如果你从最左边的数字......
  • 用 semalt 给新网站 CheckNumber.AI 跑个网页分析
    直接访问网站,加上网站域名(https://CheckNumber.AI):https://semalt.com/analyzer?url=checknumber.ai大概等1、2分钟后,分析结果就出来了:第一屏里给出了总体的一个评分(这个网站截图不知道为啥没显示出来)第二屏里给出了页面SEO的信息,除了Title、Metadescription,还把网站的各......
  • 初等数论-03-解同余方程
    欧拉函数定义与\(m\)互素的剩余类的个数记为\(\varphi(m),\varphi(m)\)称之为欧拉函数关于欧拉函数的结论定理1:(欧拉定理)若\((k,m)=1,\)则:\(k^{\varphi(m)}\equiv1(\bmodm)\)$定理2:(费尔玛小定理)若\(p\)为素数,则对所有的整数\(a,a^{p}=a(\bmodm)\)$定......
  • Natural Number Game Sol
    https://adam.math.hhu.de/#/g/leanprover-community/nng4TutorialWorldLevel1/8:TherfltacticrflLevel2/8:therwtacticrw[h]rflLevel3/8:Numbersrw[two_eq_succ_one]rw[one_eq_succ_zero]rflLevel4/8:rewritingbackwardsrw[←one_e......
  • HDU1711-Number Sequence
    开始刷KMP1(看毛片算法)ViewCodeHDU1711暴力就是A的数字个数*B的数字个数,10^10,还要乘个未知的数据个数:T,肯定超时 开始 回顾  学KMP ......
  • 【笔记】数论初步
    1.整除和同余1.1整除1.1.1定义\(\text{如果有}a,b,c\inN,\text{且}b=a\timesc,\text{则称}a\text{整除}b,\text{记作}a\midb\)1.1.2性质\(a\mida\)若\(a\midb\)且\(b\midc\),则\(a\midc\)若\(a\midb_1,a\midb_2,\cdots,a\midb_n\),则\(a\......
  • [HBCPC2024] Points on the Number Axis A
    [HBCPC2024]PointsontheNumberAxisA题目描述Aliceisplayingasingle-playergameonthenumberaxis.Thereare\(n\)pointsonthenumberaxis.Eachtime,theplayerselectstwopoints.Thetwopointswillberemoved,andtheirmidpointwillbeadded.......
  • 自动化处理: Unhandled exception. System.IO.IOException: The configured user limit
    #!/bin/bash#设置root密码为环境变量exportROOT_PASSWORD="your_root_password_here"#检查是否以普通用户运行if["$EUID"-eq0];thenecho"不要以root权限直接运行此脚本"exitfi#打印当前的max_user_instances值echo"当前的max_user_instances值:"su......
  • C#自动化处理: Unhandled exception. System.IO.IOException: The configured user lim
    usingSystem;usingSystem.Diagnostics;classProgram{//定义root密码(请用你的实际密码替换)privateconststringRootPassword="your_root_password_here";staticvoidMain(){try{//需要执行的命令列表......
  • 2001年国际数学奥林匹克预选题数论部分P2:不定方程组、构造
    题目考虑方程组\begin{align*} \begin{cases} x+y=z+u,\\ 2xy=zu. \end{cases} \end{align*}求实常数$m$的最大可能值,使得对于上述方程组满足$x\geqy$的正整数解$(x,y,z,u),$总有$\dfrac{x}{y}\geqm.$提示 根据前一命题的思想,$z,u$应该落在$x,y$之间,......