当前位置: 首页 > article >正文

acwing算法基础02一高精度,前缀和,差分

在这里插入图片描述
在这里插入图片描述

#include <iostream>
#include <vector>
using namespace std;

const int N = 1e6 + 10;
//模板 C=A+B

vector<int> add(vector<int> &A,vector <int> &B)
{
     vector<int> C;
    int t = 0;  // 用来保存每位的和(包括进位)
       // 计算加法直到所有位都处理完
    for(int i=0;i<A.size()||i<B.size();i++)
    {
         if(i<A.size()) t+=A[i];
         if(i<B.size()) t+=B[i];
         //t 里存的 是a[i]+b[i]+上一位进位
         C.push_back(t%10);// 当前位的结果
         t /= 10;//进位
         
    }
    if(t)C.push_back(1);
    return C;
}
int main()
{
    string a,b;//  太长要用string
    vector<int> A,B;//vector自带size 用vecor存储
    cin>>a>>b;//a="123456"a是string类 所以要把a每一个数抠出来放到vector中
    for(int i=a.size()-1;i>=0;i--) A.push_back(a[i]-'0');//存的是数字 减去一个偏移量 A={6,5,4,3,2,1
    for(int i= b.size()-1;i>=0;i--) B.push_back(b[i]-'0');//存的是数字 减去一个偏移量 
   vector<int> C = add(A, B);// 调用 add 函数得到结果 C
    for(int i=C.size()-1;i>=0;i--) printf("%d",C[i]);
}

在这里插入图片描述
sr:前i个数的和
sl-1 前l-1 个数的和
在这里插入图片描述
把s0 定成0 以1为前缀和

#include<iostream>

using namespace std;

const int N =100010;

int n,m;
int a[N],s[N];
int main()
{
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++) scanf("%d",&a[i]);
       // 计算前缀和 s
    for(int i=1;i<=n;i++){
        s[i]=s[i-1]+a[i];
    }
    while(m--){
        int l,r;
        scanf("%d%d",&l,&r);
        printf("%d\n",s[r]-s[l-1] );//得出来l到r的范围
    }
    return 0;
}

二维
在这里插入图片描述


http://www.kler.cn/a/393283.html

相关文章:

  • 设计模式之责任链模式(Chain Of Responsibility)
  • C++面试基础知识:排序算法 C++实现
  • 【数据结构与算法】第11课—数据结构之选择排序和交换排序
  • JSON-RPC-CXX深度解析:C++中的远程调用利器
  • 十三、注解配置SpringMVC
  • mongoDB的安装及使用
  • 引入第三方jar包部署服务器后找不到jar处理方法
  • Ansible剧本检测Windows防火墙状态
  • Redis - 哨兵(Sentinel)
  • 【MySQL】summary
  • 传奇996_21——龙岭事件
  • 丹摩征文活动 |通过Pycharm复现命名实体识别模型--MECT模型
  • JS 实现SSE通讯和了解SSE通讯
  • AI大模型识别多人发音的实时语音交互理论研究
  • Logback 日志介绍及与Spring Boot 的整合 【保姆级教程】
  • 数据库基础(11) . SQL脚本
  • 在arm64架构下, Ubuntu 18.04.5 LTS 用命令安装和卸载qt4、qt5
  • golang将word、excel转换为pdf
  • JAVA:探索 EasyExcel 的技术指南
  • 哈希表的实现--C++
  • 【Redis】Redis的一些应用场景及使用策略
  • Android Studio使用c++编写
  • MATLAB和R及Python伪时间分析
  • 泷羽sec学习打卡-Linux基础2
  • Webpack 1.13.2 执行 shell 命令解决 打印时没有背景色和文字颜色的问题
  • 【云计算解决方案面试整理】3-7主流云计算平台、云计算架构、安全防护