做高精度除法,从高位开始除。。高位除剩下的我们就*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高精度除以低精度的更多相关文章

  1. 第三十三章 metrics(1) - graphite搭建 + whisper存储模式 + 高精度向低精度聚合方式 + 集成StatsD + 集成grafana

    组件介绍: carbon:Carbon实际上是一系列守护进程,组成一个Graphite安装的存储后端.这些守护进程用一个名为Twisted的事件驱动网络引擎监听时间序列数据.Twisted框架让Car ...

  2. 【高精度】高精度数除以低精度数I

    问题 G: [高精度]高精度数除以低精度数I 时间限制: 1 Sec  内存限制: 512 MB提交: 173  解决: 71[提交] [状态] [讨论版] [命题人:] 题目描述 修罗王聚集了庞大的 ...

  3. golang:一个高性能低精度timer实现

    在go自带的timer实现中,采用的是通常的最小堆的方式,具体可以参见这里. 最小堆能够提供很好的定时精度,但是,在实际情况中,我们并不需要这样高精度的定时器,譬如对于一个连接,如果它在2分钟以内没有 ...

  4. Si7006主要面向传统上使用的分立RH / T传感器的低精度的应用

    Silicon Labs的Si7006 / 13/20/21个I 2 C相对湿度及温度传感器结合充分工厂校准湿度和温度传感器元件与模拟-数字转换器,信号处理和一个I 2 C主机接口.专利使用业界标准低 ...

  5. int类型被强制转换成较低精度的byte类型

    公司的项目上线之前会进行代码合规性检查,其中很容易违反的一个规则就是“不要把原始类型转换成较低的精度”,实际开发的过程中,很多方法在处理数据时,尤其在做移位操作的时候,难免要把int类型转换成byte ...

  6. Number(),parseInt(),parseFloat(),Math.round(),Math.floor(),Math.ceil()对比横评

    首先,这些处理方法可分为三类. 1,只用来处理数字取整问题的:Math.round(),Math.floor(),Math.ceil(): 2,专门用于把字符串转化成数值:parseInt(),par ...

  7. ORACLE 中NUMBER 类型 低精度转换成高精度

    例如: 表User中有一个字段 salary  Number(10,3), 如果想把字段salary的类型提高精度到salary  Number(10,6),保留六位小数, 解决办法:1,ALTER ...

  8. 检测Java程序运行时间的2种方法(高精度的时间[纳秒]与低精度的时间[毫秒])

    第一种是以毫秒为单位计算的. 代码如下: long startTime=System.currentTimeMillis(); //获取开始时间 doSomeThing(); //测试的代码段 lon ...

  9. mathjs,math.js解决js运算精度问题

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. Vue 标签Style 动态三元判断绑定

    <div  :style=" 1==1 ? 'display:block' : 'display:none' "></div> v-bind:style 的 ...

  2. codeup 1934 查找元素

    题目描述: 输入一个数n,然后输入n个数值各不相同,再输入一个值x,输出这个值在这个数组中的下标(从0开始,若不在数组中则输出-1. 输入: 测试数据有多组,输入n(1<=n<=200), ...

  3. 配接Cisco设备

  4. Windows Server 2008 R2系统安装

    把系统U盘插到服务器上,然后启动服务器进入BIOS界面选择U盘启动. 根据服务器的不同,进入BIOS界面的按钮也不一样,主流的有F10.F11.F12.F2.ESC.delete等. 在从BIOS启动 ...

  5. js input相关事件(转载)

    1.onfocus  当input 获取到焦点时触发. 2.onblur  当input失去焦点时触发,注意:这个事件触发的前提是已经获取了焦点再失去焦点的时候才会触发该事件,用于判断标签为空.3.o ...

  6. SELECT ... FOR UPDATE or SELECT ... FOR SHARE Locking Reads session

    小结: 1.注意使用限制 Locking reads are only possible when autocommit is disabled (either by beginning transa ...

  7. proc/net/tcp中各项内容的含义

  8. 小麦苗数据库巡检脚本,支持Oracle、MySQL、SQL Server和PG等数据库

    目录 一.巡检脚本简介 二.巡检脚本特点 三.巡检结果展示 1.Oracle数据库 2.MySQL数据库 3.SQL Server数据库 4.PG数据库 5.OS信息 四.脚本运行方式 1.Oracl ...

  9. GeoMesa,整体架构,创建Schema并导入数据

    GeoMesa,整体架构,创建Schema并导入数据 一.GeoMesa-整体架构 二.GeoMesa-创建Schema并导入数据 2.1 GeoTools Data 模块 2.2 索引管理 2.3 ...

  10. IP路由__距离矢量路由选择协议

    矢量路由选择协议 1.距离矢量路由选择算法发送完整的路由选择表到相邻的路由器,然后,相邻的路由器会将接收到的路由表项与自己原有的路由表进行组合,以完善路由器的路由表. 由于路由器接收到的更新只是来自相 ...