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

蓝桥杯打卡Day6


文章目录

  • N的阶乘
  • 基本算术
  • 整数查询

一、N的阶乘OI链接

本题思路:本题是关于高精度的模板题。

#pragma GCC optimize(3)
#include <bits/stdc++.h>constexpr int N=1010;std::vector<int> a;
std::vector<int> f[N];std::vector<int> mul(int b)
{std::vector<int> c;int t=0;for(int i=0;i<a.size();i++){t+=a[i]*b;c.push_back(t%10);t/=10;}while(t){c.push_back(t%10);t/=10;}a=c;return c;
}int main()
{std::ios::sync_with_stdio(false);std::cin.tie(nullptr);std::cout.tie(nullptr);a.push_back(1);f[0]={1};for(int i=1;i<=N;i++)f[i]=mul(i);int n;while(std::cin>>n){for(int i=f[n].size()-1;i>=0;i--) std::cout<<f[n][i];std::cout<<std::endl;}return 0;
}

二、基本算术OI链接

 本题思路:本题是高精度的模板题。

#include <bits/stdc++.h>int add(std::vector<int> a,std::vector<int> b)
{int t=0;int cnt=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];if(t>=10) cnt++;t/=10;}return cnt;
}int main()
{std::ios::sync_with_stdio(false);std::cin.tie(nullptr);std::cout.tie(nullptr);while(true){std::string num1,num2;std::cin>>num1>>num2;if(num1=="0"&&num2=="0") break;std::vector<int> a,b;for(int i=num1.size()-1;i>=0;i--) a.push_back(num1[i]-'0');for(int i=num2.size()-1;i>=0;i--) b.push_back(num2[i]-'0');int res=add(a,b);if(res==0) std::cout<<"No carry operation."<<std::endl;else if(res==1) std::cout<<res<<" carry operation."<<std::endl;else std::cout<<res<<" carry operations."<<std::endl;}return 0;
}

三、整数查询OI链接

本题思路:本题是高精度的模板题。

#include <bits/stdc++.h>std::vector<int> res={0};std::vector<int> add(std::vector<int> a)
{int t=0;std::vector<int> c;for(int i=0;i<res.size()||i<a.size();i++){if(i<res.size()) t+=res[i];if(i<a.size()) t+=a[i];c.push_back(t%10);t/=10;}if(t) c.push_back(1);return c;
}int main()
{std::ios::sync_with_stdio(false);std::cin.tie(nullptr);std::cout.tie(nullptr);std::string num;while(true){std::cin>>num;if(num=="0") break;std::vector<int> a;for(int i=num.size()-1;i>=0;i--) a.push_back(num[i]-'0');res=add(a);}while(res.size()>1&&res.back()==0) res.pop_back();for (int i = res.size() - 1; i >= 0; -- i )std::cout << res[i];std::cout << std::endl;return 0;
}
http://www.lryc.cn/news/163092.html

相关文章:

  • spark集群问题汇总
  • WebServer 解析HTTP 请求报文
  • Golang开发--interface的使用
  • 2023 年高教社杯全国大学生数学建模竞赛题目 B 题 多波束测线问题
  • leetcode算法题--生成特殊数字的最少操作
  • 数学建模--决策树的预测模型的Python实现
  • Linkstech多核并行仿真丨光伏发电系统模型及IEEE 39 bus模型多核并行实测
  • 在STS里使用Gradle编译Apache POI5.0.0
  • golang - 使用有缓冲通道控制并发数
  • AUTOSAR测试指标
  • Vue 前端项目使用alibaba矢量库svg图标
  • 蓝桥杯官网填空题(距离和)
  • 【座位调整】Python 实现-附ChatGPT解析
  • 前端面试基础面试题——5
  • Java高并发系列: 使用wait - notify实现高效异步方法
  • 业务安全详解
  • 算法笔记--最大连续1的个数Ⅲ
  • Linux CentOS7 添加中文输入法
  • Python接口自动化封装导出excel方法和读写excel数据
  • React三属性之:refs
  • 将Vue项目迁移到微信小程序中
  • php权限调整强制用户退出的解决方案
  • [uniapp]踩坑日记 unexpected character > 1或‘=’>1 报错
  • 面试求职-经典面试问题
  • 在Linux服务器上部署Tornado项目
  • JWT认证、drf-jwt安装和简单使用、实战之使用Django auth的User表自动签发、实战之自定义User表,手动签发
  • conda常用命令及问题解决-创建虚拟环境
  • 严选算法模型质量保障
  • 学习Bootstrap 5的第七天
  • VirtualBox(内有Centos 7 示例安装)