Single Round Math sdut3260高精度除以低精度
做高精度除法,从高位开始除。。高位除剩下的我们就*10扔给低一位处理,最终余数是在最低位取模得到的
高精除以高精,我们可以这么做,让除数在后面补零,刚好小于被除数,作若干次减法,减的次数加到商里面
然后如果除数后面有零,我们就去掉一个0,商*=10,直到除数刚好小于被除数,统计减法次数加到商里面
如果我们发现去掉所有零,被除数仍然是小于除数的。。那么我们就做完了除法。。(高精度带余除法
这个题就是算高精度对11取模,。。输出答案别忘了break;
两种解法
高精除以低精
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
int s[1005],p[1005];
char a[1005],b[1005];
int main(){
int T;scanf("%d",&T);
while(T--){
scanf("%s%s",a,b);
int la=strlen(a),lb=strlen(b),flag=0,i,k=11;
if(la!=lb) {printf("NO\n");continue;}
for(i=0;i<la;++i){
if(a[i]!=b[i]) {
printf("NO\n");flag=1;break;
}
}
if(flag) continue;
s[0]=la;
for(i=0;i<la;++i){
s[i+1]=a[la-i-1]-'0';
}
int r;
for(i=s[0];i>=1;--i){
if(i==1) r=s[i]%k;
if(i!=1) s[i-1]+=s[i]%k*10;
s[i]/=k;
}
if(r==0) printf("YES\n");
else printf("NO\n");
}
return 0;
}
直接取模
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
int s[1005],p[1005];
char a[1005],b[1005];
int main(){
int T;scanf("%d",&T);
while(T--){
scanf("%s%s",a,b);
int la=strlen(a),lb=strlen(b),flag=0,i,k=11;
// printf("(%d,%d)\n",la,lb);
if(la!=lb) {printf("NO\n");continue;}
for(i=0;i<la;++i){
if(a[i]!=b[i]) {
printf("NO\n");flag=1;break;
}
}
if(flag) continue;
int ans=0;
for(i=0;i<la;++i){
ans=(ans*10+a[i]-'0')%11;
}
if(ans==0) printf("YES\n");
else printf("NO\n");
}
return 0;
}
Single Round Math sdut3260高精度除以低精度的更多相关文章
- 第三十三章 metrics(1) - graphite搭建 + whisper存储模式 + 高精度向低精度聚合方式 + 集成StatsD + 集成grafana
组件介绍: carbon:Carbon实际上是一系列守护进程,组成一个Graphite安装的存储后端.这些守护进程用一个名为Twisted的事件驱动网络引擎监听时间序列数据.Twisted框架让Car ...
- 【高精度】高精度数除以低精度数I
问题 G: [高精度]高精度数除以低精度数I 时间限制: 1 Sec 内存限制: 512 MB提交: 173 解决: 71[提交] [状态] [讨论版] [命题人:] 题目描述 修罗王聚集了庞大的 ...
- golang:一个高性能低精度timer实现
在go自带的timer实现中,采用的是通常的最小堆的方式,具体可以参见这里. 最小堆能够提供很好的定时精度,但是,在实际情况中,我们并不需要这样高精度的定时器,譬如对于一个连接,如果它在2分钟以内没有 ...
- Si7006主要面向传统上使用的分立RH / T传感器的低精度的应用
Silicon Labs的Si7006 / 13/20/21个I 2 C相对湿度及温度传感器结合充分工厂校准湿度和温度传感器元件与模拟-数字转换器,信号处理和一个I 2 C主机接口.专利使用业界标准低 ...
- int类型被强制转换成较低精度的byte类型
公司的项目上线之前会进行代码合规性检查,其中很容易违反的一个规则就是“不要把原始类型转换成较低的精度”,实际开发的过程中,很多方法在处理数据时,尤其在做移位操作的时候,难免要把int类型转换成byte ...
- Number(),parseInt(),parseFloat(),Math.round(),Math.floor(),Math.ceil()对比横评
首先,这些处理方法可分为三类. 1,只用来处理数字取整问题的:Math.round(),Math.floor(),Math.ceil(): 2,专门用于把字符串转化成数值:parseInt(),par ...
- ORACLE 中NUMBER 类型 低精度转换成高精度
例如: 表User中有一个字段 salary Number(10,3), 如果想把字段salary的类型提高精度到salary Number(10,6),保留六位小数, 解决办法:1,ALTER ...
- 检测Java程序运行时间的2种方法(高精度的时间[纳秒]与低精度的时间[毫秒])
第一种是以毫秒为单位计算的. 代码如下: long startTime=System.currentTimeMillis(); //获取开始时间 doSomeThing(); //测试的代码段 lon ...
- mathjs,math.js解决js运算精度问题
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
随机推荐
- const关键字:终于拥有真正的常量声明语句
本文首发于个人网站:const关键字:终于拥有真正的常量声明语句 你好,今天大叔想和你唠扯唠扯 ES6 新增的关键字 -- const.在说 const 关键字之前,大叔先和你唠唠大叔自己对 cons ...
- 十一、UART&TTY驱动
Linux系统中UART驱动和TTY驱动两者有着紧密的关系,它们不像I2C和SPI驱动是单独一个模块,分析时应当将它们看成一个整体来分析.UART驱动部分依赖于硬件平台,而TTY驱动和具体的平台无关. ...
- FLask的偏函数应用
偏函数 实际上,偏函数主要辅助原函数,作用其实和原函数差不多,不同的是,我们要多次调用原函数的时候,有些参数,我们需要多次手动的去提供值.而偏函数便可简化这些操作,减少函数调用,主要是将一个或多个参数 ...
- JVM有哪些垃圾回收器
JVM 的垃圾回收器 目录 JVM 的垃圾回收器 经典垃圾收集器 Serial 收集器 ParNew 收集器 Parallel Scavenge 收集器 Serial Old 收集器 Parallel ...
- 【IDEA】Lombok--是否值得我们去使用
官网 https://projectlombok.org/ 简介 Project Lombok is a java library that automatically plugs into your ...
- Android N selectQualifiedNetwork分析
前言: 参考:Android N wifi auto connect流程分析 后续 Android 8.0/9.0 wifi 自动连接评分机制 分析 前面说了,handleScanResults会去调 ...
- 4. Tomcat调优
1, 调内存 JVM 2, 调网络处理框架 普通io/nio,netty https://segmentfault.com/a/1190000008873688 https://ww ...
- 长连接 短连接 RST报文
https://baike.baidu.com/item/短连接 短连接(short connnection)是相对于长连接而言的概念,指的是在数据传送过程中,只在需要发送数据时,才去建立一个连接,数 ...
- 消息中间件——rocketmq环境配置
产生原因 RocketMQ概述 RocketMQ 是一款分布式.队列模型的消息中间件,具有以下特点: 能够保证严格的消息顺序 提供丰富的消息拉取模式 高效的订阅者水平扩展能力 实时的消息订阅机制 亿级 ...
- EasyExcel导出小结:动态标题、标题格式、相同值合并
1. 实列相关依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel& ...