Divisibility by Eight

AFE芯片做什么用的?AFE(Analog Front End) 模拟前端 AFE采样精度的影响因素非常多,需要综合考虑各种因素,并根据实际应用场景来选择合适的参数和方法。通过减少噪声、提高采样频率、调节放大器增益、降低电源噪声、优化传输线路、进行温度补偿、选择合适的ADC分辨率、根据信号类型选择合适的AFE参数、进行器件匹配和校准等方法,可以提高AFE的采样精度,从而更好地满足各种应用需求。版权声明:本文为优快云博主「czf.Forver」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 阅读详情

Divisibility by Eight
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

You are given a non-negative integer n, its decimal representation consists of at most 100 digits and doesn't contain leading zeroes.

Your task is to determine if it is possible in this case to remove some of the digits (possibly not remove any digit at all) so that the result contains at least one digit, forms a non-negative integer, doesn't have leading zeroes and is divisible by 8. After the removing, it is forbidden to rearrange the digits.

If a solution exists, you should print it.

Input

The single line of the input contains a non-negative integer n. The representation of number n doesn't contain any leading zeroes and its length doesn't exceed 100 digits.

Output

Print "NO" (without quotes), if there is no such way to remove some digits from number n.

Otherwise, print "YES" in the first line and the resulting number after removing digits from number n in the second line. The printed number must be divisible by 8.

If there are multiple possible answers, you may print any of them.

Sample test(s)
input
3454
output
YES
344
input
10
output
YES
0
input
111111
output
NO

一个100位以下的数,能否通过删除一些字符使其能被8整除。听说有人打表过,因为被8整除的数只需要后三位被8整除即可。因为大于1000的部分一定可以用8的倍数表示。

因此这个数是否被8整除取决于后三位。一共124个,打表找。我想可以一个一个找,一共才100位,并不会超时,一开始也可以通过找0和8来剪枝。然后分2位和3位来找。

 #include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
char c[105];
int leap1[105], leap2[105], leap3, pre, sum;
int main()
{
 int i, j, m, n, len, leap, k;
 scanf("%s",c);
 memset(leap1, 0, sizeof(leap1));
 memset(leap2, 0, sizeof(leap2));
 len = strlen(c); leap = 0; leap3 = 0;
 for (i = 0; i < len; i++)
 {
  if (c[i] == '0')
  {
   leap = 1;
  }
 }
 if (leap == 1)
  cout << "YES" << endl << "0" << endl;
 else
 {
  for (i = 0; i < len; i++)
  {
   if (c[i] == '8')
   {
    leap = 1;
   }
  }
  if (leap == 1)
   cout << "YES" << endl << "8" << endl;
  else
  {
   for (i = 0; i < len; i++)
   {
    for (j = i + 1; j < len; j++)
    {
     if (((c[i] - '0') * 10 + (c[j] - '0')) % 8 == 0)
     {
      cout << "YES" << endl << c[i] << c[j] << endl;
      leap = 1;
      break;
     }
    }
    if (leap == 1)break;
   }
   if (!leap){
    for (i = 0; i < len; i++)
    {
     for (j = i+1; j < len; j++)
     {
      for (k = j+1; k < len; k++)
      {
       if (((c[i] - '0') * 100 + (c[j] - '0') * 10 + (c[k] - '0')) % 8 == 0)
       {
        cout << "YES" << endl << c[i] << c[j] << c[k] << endl;
        leap = 1;
        break;
       }
      }
      if (leap == 1)break;
     }
     if (leap == 1)break;
    }
   }
   if (leap == 0)cout << "NO" << endl;
  }
 }
 return 0;
}

2025华为OD 面试手撕代码真题【字符串至多删除一个字符,是否能构成回文串】 阅读详情

相关推荐

做形态学方法的团队_“设计形态学”与“第三自然”

文/邱松(清华大学 美术学院)摘要:“设计形态学”是基于“形态学”研究的设计基础学科。“形态”既是该学科研究的主体,又是与其它学科相连接的“纽带”。实际上,不管是供养我们的地球家园,还是神秘莫测的浩瀚宇宙,均由数量纷繁、千姿百态的“形态”构筑而成。形态通常被分成两大类:一类是源于“第一自然”的“自然形态”;另一类是来自“第二自然”的“人造形态”。而这两类形态正是“设计形态学”研究的两条...

weixin_31548723的博客 2683

Divisibility by Eight(数学题)

给你一个不包含前导0的整数,位数100位,问是否可以在通过删除一些位数,且不能改变原有位置的情况下整除8?

Try_harder的博客 333

KEPServer EX6的Modbus、MQTT和REST Server一站式配置整理说明

KEPServer EX6的Modbus、MQTT和REST Server一站式配置整理说明

syqenter的专栏 8960

Codeforces 550C Divisibility by Eight【数学思维题】好题!

C. Divisibility by Eight time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output You are given a non-negative integer n, its

mengxiang000000 1100

基于555定时器的D类功放设计:从PWM原理到无反馈电路实践

D类功放(数字功放)是一种高效率的音频放大技术,其核心原理是脉冲宽度调制(PWM)。它将输入的模拟音频信号转换为一系列高速开关的脉冲,通过控制功率开关管(如MOSFET)的通断,再经低通滤波器还原放大后的音频。相比传统AB类功放,其转换效率通常超过90%,显著降低了热能损耗。这项技术在追求高能效和小型化的现代音频设备中价值凸显,广泛应用于有源音箱、汽车音响和便携式设备。本文聚焦于一种独特的实现方案:以经典的555定时器芯片为核心,构建一个无整体负反馈的D类功放。通过剖析其PWM调制器、FET电压-电流转换级

weixin_30162121的博客 221

手把手教你用高频注入法辨识永磁同步电机电感参数(附MATLAB仿真)

本文详细介绍了高频注入法在永磁同步电机电感参数辨识中的工程实践与MATLAB仿真指南。通过高频信号注入法,无需拆解电机即可在线精确测量Ld和Lq参数,适用于电动汽车驱动和工业伺服等高精度控制场景。文章包含信号设计、硬件实现、解调算法及完整MATLAB仿真模型构建,帮助工程师快速掌握这一关键技术。

orange的博客 292

C. Divisibility by Eight (数学结论题)

C. Divisibility by Eight 题目链接 大致题意: 给出一个字符串,删除一些(或者0个)数字,使得剩余数字可以整除8,并输出"YES"和删除后的数字,否则输出"NO" 解题思路: 数学结论:只要尾部有三位数是8的倍数,那么这个数就能被8整除 暴力枚举,枚举一位,两位,三位的情况即可 复杂度:O(n3) n<=100 AC代码: #include <bits/stdc++.h> #define rep(i, n) for (int i = 1; i <= (n)

qq_49494204的博客 302

基于分数阶的图像边缘细节检测——边缘计算

在图像处理中,我们可以使用分数阶导数运算器来计算图像的分数阶梯度,从而得到更精确的边缘信息。通过使用基于分数阶的图像边缘细节检测方法,我们可以更准确地捕捉图像中的边缘细节信息。在这篇文章中,我们将介绍一种基于分数阶的方法来进行图像边缘细节检测,并提供相应的源代码实现。需要注意的是,以上提供的代码示例仅用于演示基于分数阶的图像边缘细节检测方法的实现。然后,我们读取了待处理的图像,并进行了预处理,如高斯模糊,以减少噪声的影响。最后,我们通过设置一个阈值,将梯度图像转化为二值化的边缘图像,并将结果显示出来。

GudcSql的博客 403

C. Divisibility by Eight【暴力枚举】

暴力枚举即可。枚举1位这种情况,枚举2位这种情况,枚举3位这种情况。 3位满足足以,其他的4位,5位。。。都包含1000必定满足。 #include<bits/stdc++.h> using namespace std; const int N=1e5+10; int st[N]; int main(void) { string s; cin>>s; for(int i=1;i<=1000;i++) if(i%8==0) st[i]++; st[0]=.

辉小歌的博客 551

GeoServer下载与安装(详细图文教程)

GeoServer官方版可以方便的发布地图数据,允许用户对特征数据进行更新、删除、插入操作,通过 GeoServer 可以比较容易的在用户之间迅速共享空间地理信息。

大剑师兰特的GIS世界 3274

手把手教你学SOC芯片架构--NoC(片上网络,Network on Chip)全方位解析

​、​。

MHD0815的博客 863

codeforce 550c Divisibility by Eight (DFS)

http://codeforces.com/contest/550/problem/C C. Divisibility by Eight You are given a non-negative integer n, its decimal representation consists of at most 100 digits and doesn

大太阳 892

【光伏风电功率预测】基于 ICEEMDAN + MSCNN-BiGRU-Attention 的并行预测模型

本文提出一种基于ICEEMDAN分解与多尺度深度学习的光伏/风电功率并行预测框架。针对多能源、多时间尺度、强非平稳特性带来的建模挑战,该模型首先通过改进的ICEEMDAN算法将原始功率序列分解为不同频段的IMF分量;随后为每个IMF构建包含多尺度CNN、双向GRU和注意力机制的子模型,实现局部特征提取与时序依赖建模;最后通过并行预测与重构获得最终功率输出。实验表明,该方法能有效解决模式混叠问题,提升预测精度,并支持光伏/风电的独立或联合预测部署,适用于风光联合调度等工程场景。

专注AI大模型,软件混淆,授权 154

C. Divisibility by Eight

http://codeforces.com/contest/550/problem/C 题意:删除一些数字,使得其能被8整除; 思路:1,2位特判,3以上只要末尾3位能被8整除,整个数就能被8整除 ; (1)暴力枚举;(2)dp,http://codeforces.com/blog/entry/18329,题解还看不懂,看评论也不懂,哎~; #include&lt;bits/stdc+...

newhonor 417

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

[CodeForces550C]Divisibility by Eight[数学]

题目链接:[CodeForces550C]Divisibility by Eight[数学] 题意分析:给出一个长度不超过100的数字,我们可以删除其中的多个数字,但是不能改变顺序。然后得到一个开头不能为0的数字,如果该数字能被8整除,就输出它。如果无法得到这种数字,就输出NO。 解题思路:8 * 125 = 1000。这是个非常神奇的事情,这意味着,当数字长度大于4位时,我们只要判断前3位能

闲停 863

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Codeforces Divisibility by Eight

C. Divisibility by Eight time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output You are given a non-negative integ

No cost too great! 440

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

CF C. Divisibility by Eight

传送门:http://codeforces.com/problemset/problem/550/C 题意:给出一个不超过100的数字字符串,不含前导零,可以去掉其中任意位子的数字,如果能让剩下的数字组成的数能被8整除,输出YES,否则输出NO 学习了大神的思路,由于1000能被8整除,所以不考虑大于1000的数,因为都是1000的倍数,枚举所有数字,按位子组成3位数,看能否被

Ac__pyt的专栏 675

U - Divisibility by Eight

You are given a non-negative integer n, its decimal representation consists of at most 100 digits and doesn’t contain leading zeroes. Your task is to determine if it is possible in this case to remove...

weixin_45603327的博客 197

codeforces 550C - Divisibility by Eight

传送门儿 题目大意:给一个序列,让你移除一些数,判断剩下的能不能被8整除。 1.一位两位单独分析 2.三位以上有数学结论:如果一个三位以上的数,末三位能被8整除,那么整个数就能被8整除。那么我就枚举这个序列中的所有的三位数,如果ok就break #include<cstdio> #include<cstring> #include<string> #include<algorithm> #include<cmath> #include<io

czyhbo的博客 233

C. Divisibility by Eight(s)

http://codeforces.com/problemset/problem/550/C time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output You are given a non-negative integ...

ccsu_deer 799

【cf 550C】C. Divisibility by Eight

1.题目链接。给定一个数字,问是否可以通过删除一些数字使得剩下的数字可以整除8.注意删除之后的数字位置相对不变 2.思维题,其实还是蛮好做的。我们保留的数字其实最多只需要三位数,原因很简单,从第四位数到最后一定可以整除。 比如:an..a3a2a1。那么这个数可以被写成:an*pow(10,n-1)+an-1*pow(10,n-2).....a3*100+a2*10+a1.对于四位以后的,权值...

YG爱木木 353
上一篇: Preparing Olympiad
下一篇: Cut Ribbon
Techay
博客等级 码龄11年 11粉丝 174原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值