topscoding主题库模板题
目录
模板题
【模板题】分因数(P1101)
【模板题】区间素数 III(P1113)
进制转换 III (任意转任意) (P2463)
A+B Problem(高精度加法)
A-B Problem(高精度减法)
A*B Problem(高精度乘法)
A/B Problem(高精除以低精)
查找m个数字
子串查找
差分
set的插入和遍历
应为最近比较忙所以一直没有更新对不起sorry,之后的话会不定期的发布文章,请大家谅解。
模板题
【模板题】分因数(P1101)
#include<bits/stdc++.h>
//#include<cmath>
using namespace std;
int main()
{int n;cin>>n;//输入cout<<n<<"=";while(n > 1){for ( int i = 2;i <= n; i++){if (n %i==0){n=n/i;cout<<i;if(n!=1){cout<<"*";}break;}}}return 0;
}
【模板题】区间素数 III(P1113)
#include <bits/stdc++.h>
using namespace std;const int N = 1e8+10;
bitset<N> flag;void prime(int n)
{flag[0] = flag[1] = 1;flag[2] = 0;for(int i = 2; i <= n; i++){if(!flag[i]){for(int j = i+i; j <= n; j+=i)flag[j] = 1;}}
}int main()
{int m, n, ans = 0;cin >> m >> n;prime(n);for(int i = m; i <= n; i++){if(!flag[i])ans++;}cout << ans;return 0;
}
进制转换 III (任意转任意) (P2463)
#include<bits/stdc++.h>
using namespace std;
long long _zhuan10(string a,long long b)
{long long s=0,k=1,t,len=a.size();for(long long i=len-1;i>=0;i--){t=(a[i]>='A'?a[i]-65+10:a[i]-48);s=s+t*k;k=k*b;}return s;
}
string _10zhuan(long long a,long long b)
{string c;while(a!=0){char t=a%b+48;if(t>'9'){t=64+t-'9'; } c=c+t;a=a/b;}reverse(c.begin(),c.end());return c;
}
int main()
{string a;long long b,c;cin>>a>>b>>c;if(a=="0"){cout<<0;return 0;}long long t=_zhuan10(a,b);cout<<_10zhuan(t,c);
}
A+B Problem(高精度加法)
//***wuhaotian***//
#include<bits/stdc++.h>
using namespace std;
string s1,s2;
int a[250],b[250],c[250];
int k=0,t=0,p;
int main(){cin >> s1>> s2;int len1=s1.size(),len2=s2.size(),len;for(int i=len1-1;i>=0;i--){a[k]=s1[i]-48;k++;}for(int i=len2-1;i>=0;i--){b[t]=s2[i]-48;t++;}len=max(len1,len2);for(int i=0;i<len;i++){ c[i]=a[i]+b[i];}for(int i=0;i<len;i++){ if(c[i]>=10){c[i+1]=c[i+1]+c[i]/10;c[i]=c[i]%10;} }for(int i=len;i>=0;i--){if(c[i] != 0){p=i;break;}}for(int i=p;i>=0;i--){cout << c[i];}
}
A-B Problem(高精度减法)
#include<bits/stdc++.h>
using namespace std;
string s1,s2;
int a[260],b[260],c[260];
int main(){int k=0,t=0,p=0;char f='-';cin >> s1>> s2;int len1= s1.size(),len2=s2.size();if(len1<len2 || len1==len2&&s1<s2){cout <<f;swap(s1,s2);}len1= s1.size(),len2=s2.size(); for(int i=len1-1;i>=0;i--){ a[k]=s1[i]-48;k++;} for(int i=len2-1;i>=0;i--){b[t]=s2[i]-48;t++;}for(int i=0;i<len1;i++){ if(a[i]<b[i]){a[i+1]-=1; a[i]=a[i]+10;}c[i]=a[i]-b[i];} for(int i=len1-1;i>=0;i--){if(c[i]!=0){p=i;break;}}for(int i=p;i>=0;i--){cout << c[i];}
}
A*B Problem(高精度乘法)
#include<bits/stdc++.h>
using namespace std;
int p,a[1010],b[1010],c[2010];
int k=0,t=0;
string s1,s2;
int main(){cin>>s1>>s2;if(s1=="0"||s2=="0"){cout << 0;return 0;} int len1=s1.size(),len2=s2.size();//注意长度在外面定义for(int i=len1-1;i>=0;i--){ //逆序存储到数组中 a[k]=s1[i]-48; k++; } for(int i=len2-1;i>=0;i--){ b[t]=s2[i]-48;t++; }for(int i=0;i<=len1-1;i++){ for(int j=0;j<=len2-1;j++){ //第i位和第j位相乘的结果一定是对应在i+j位//一定要注意是+=,因为某一位上可能存放着多组乘积 c[i+j]=c[i+j]+a[i]*b[j];}}int len=s1.size()+s2.size();//结果的长度最长a.size()+b.size()for(int i=0;i<len;i++){//处理进位 c[i+1]=c[i+1]+c[i]/10;c[i]=c[i]%10;}for(int i=len;i>=0;i--){if(c[i]!=0){ p=i;break;}//找出最高不为0的位置 }for(int i=p;i>=0;i--){cout<<c[i];}return 0;
}
A/B Problem(高精除以低精)
#include<bits/stdc++.h>
using namespace std;
int b,c[10001],t=0,f;//c表示商 ,t表示被除数
int main()
{string a;cin>>a>>b;int la=a.size(),i,p;for(i=0;i<=la-1;i++){t=t*10+a[i]-48;c[i]=t/b;t=t%b;}for(i=0;i<=la-1;i++){if(c[i]!=0){ p=i;f=1;break;}}if(f==1){for(i=p;i<=la-1;i++){ cout<<c[i]; }//cout<<"..."<<t;//输出余数 }else{cout << 0;//判断是否出现小数除以大数的情况 }return 0;
}
查找m个数字
#include<bits/stdc++.h>
using namespace std;
const int N = 1e6 + 10;
int a[2*N], n, m, q;
int check(int q)
{int l = 1, r = n;while(l <= r){int mid = (l+r) >> 1;if(a[mid] == q)return q;else if(a[mid] > q)r = mid - 1;else l = mid + 1;}return -1;
}
int main()
{scanf("%d", &n);for(int i = 1; i <= n; i ++)scanf("%d", &a[i]);sort(a+1, a+n+1);scanf("%d", &m);for(int i = 1; i <= m; i ++){scanf("%d", &q);printf("%d\n", check(q));}return 0;
}
子串查找
#include<bits/stdc++.h>
using namespace std;
int main()
{string a,b;int s=0;int f=0;getline(cin,a);getline(cin,b);int nops=a.find(b); if(nops==-1){cout<<-1;f=1;}else{while(nops!=-1){//cout<<nops<<endl;s++;nops=a.find(b,nops+1);}}if(f==0){cout<<s;}}
差分
//***wuhaotian***//
#include<bits/stdc++.h>
using namespace std;
const int N = 1e7 + 10;
int q[N], s[N];
void w( int l,int r,int c)
{s[l] =s[l]+ c;s[r+1]=s[r+1]- c;
}
int main()
{int n , m ; cin>> n >> m;for( int i = 1 ; i <= n ; i++ ){cin >>q[i];w(i,i,q[i]);}while(m--){int l , r , c;cin>>l>>r>>c; w(l,r,c);}for( int i = 1 ; i <= n ; i++ ){s[i]=s[i]+s[i-1];} for( int i = 1 ; i <= n ; i++ ){cout<<s[i]<<" ";}
}
set的插入和遍历
#include<bits/stdc++.h>
using namespace std;
int main(){set<int> s;//set可以自动去重和排序,默认升序 int n,t;cin >> n;for(int i=1;i<=n;i++){cin >> t;s.insert(t);//set没有push_back操作 }set<int>::iterator it;//set需要使用迭代器遍历数据 for(it=s.begin();it!=s.end();it++){//set支持双向迭代器 cout << *it << " ";}
}
应为最近比较忙所以一直没有更新对不起sorry,之后的话会不定期的发布文章,请大家谅解。
相关文章:
topscoding主题库模板题
目录 模板题 【模板题】分因数(P1101) 【模板题】区间素数 III(P1113) 进制转换 III (任意转任意) (P2463) AB Problem(高精度加法) A-B Problem(高精度减法&…...
Linux--进程间通讯--FIFO(open打开)
1. 什么是FIFO FIFO命名管道,也叫有名管道,来区分管道pipe。管道pipe只能用于有血缘关系的进程间通信,但通过FIFO可以实现不相关的进程之间交换数据。FIFO是Linux基础文件类型中的一种,但是FIFO文件在磁盘上没有数据块,…...
哪里可以了解轻量的工作流引擎?
如果想要实现高效率的办公,可以使用轻量的工作流引擎低代码技术平台。随着工作量日益繁重起来,传统的办公制作方式已经无法满足现实需要的,采用轻量级的表格制作工具,就能在无形中缓解办公压力,创造更高效、灵活、优质…...
lvs负载均衡、LVS集群部署
四:LVS集群部署 lvs给nginx做负载均衡项目 218lvs(DR 负载均衡器) yum -y install ipvsadm(安装这个工具来管理lvs) 设置VIP192.168.142.120 创建ipvsadm的文件用来存放lvs的规则 定义策略 ipvsadm -C //清空现有…...
如何应对核心员工提离职?
最近一年互联网行情不好,很多大厂都在裁员,但裁员并不是不要人做事了。原来你这个岗位10个人做,企业有钱赚养得起,现在企业不怎么赚钱了,只能养4个人了。那么会有六个被裁掉。这时候对企业价值最大的4个人会被留下。也…...
建站系列(八)--- 本地开发环境搭建(WNMP)
目录 相关系列文章前言一、准备工作二、Nginx安装三、MySQL安装四、PHP安装及Nginx配置五、总结 相关系列文章 建站系列(一)— 网站基本常识 建站系列(二)— 域名、IP地址、URL、端口详解 建站系列(三)— …...
21天学会C++:Day8----范围for与nullptr
目录 编辑 1. 范围for 2. nullptr 1. 范围for 我们在写C语言循环遍历代码的时候,无论是用 for循环,while循环都需要考虑循环的起始条件,循环变量的递增逻辑,循环的结束条件。麻烦不说还可能会出错。 int main() {int arr[]…...
Linux——环境变量
✅<1>主页::我的代码爱吃辣 📃<2>知识讲解:Linux——环境变量 ☂️<3>开发环境:Centos7 💬<4>前言:环境变量(environment variables)一般是指在操作系统中用来指定操作…...
Screen的详细全面安装教程及Screen的用法
Screen可以大大提高终端使用效率,是Linux系统管理和运维的必备技能。当我们开启Screen后,只要Screen进程没有终止,其内部运行的会话都可以恢复。即使网络连接中断,用户也可以重新进入已开启的Screen中,对中断的会话进行…...
生成树、Prufer序列的计数问题:0912T1
看到生成树计数,很容易想到生成树计数 然后发现每个点有度数限制,我们可以先考虑枚举每个点的度数(也可以是Prufer 序列中的出现次数) 假设出现次数为 a a a,可以得出其生成树方案为 n ! ∏ ( a i − 1 ) ! \frac{…...
SQL_牛客网_SQL264_求每个登陆日期的次日留存率
牛客每个人最近的登录日期(五) 牛客每天有很多人登录,请你统计一下牛客每个日期新用户的次日留存率。 有一个登录(login)记录表,简况如下: id user_id client_id date 1 2 1 2020-10-12 2 3 2 2020-10-12 3 1 2 2020-10-…...
Hive 基础知识
目录 1.基础概念1.1 定义1.2 组件1.3 元数据1.4 内部表和外部表 2. Hive与关系型数据库的对比3. Hive 数据存储4. 参考文献 1.基础概念 1.1 定义 Hive是一个基于Hadoop的数据仓库基础设施工具,它可以将结构化的数据文件映射为一张数据库表,并提供类SQL查…...
【数据结构】树的基础知识及三种存储结构
💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤 📃个人主页 :阿然成长日记 …...
ABB 3BHB003688R0101接口模块
通信接口:接口模块通常具有多种通信接口,如以太网、串行通信、Modbus、Profibus等,以便与其他设备和系统进行数据交换。 协议支持:它们支持各种通信协议,确保与不同制造商的设备和控制系统兼容。 数据转换和适配&…...
精简 jre 涉坑记录
主要参考:https://zhuanlan.zhihu.com/p/91496457 主要问题: 1)jre 中有 client 和 server 之分。参考:关于JDK的Server和Client模式的切换_jacksonary的博客-CSDN博客 2)对 copy 出来的 rt 进行打 zip 包时&#x…...
Java程序员学习算法路线规划总结
文章目录 前言:必须清楚得基本数据结构:1.需掌握哪些算法?2.学习步骤以及路线 前言:必须清楚得基本数据结构: 数组(Array) 链表(Linked List) 栈(Stack&…...
火山引擎 ByteHouse:两个关键技术,揭秘 OLAP 引擎中的数据导入技术
更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群 数据导入是衡量 OLAP 引擎性能及易用性的重要标准之一,高效的数据导入能力能够加速数据实时处理和分析的效率。 作为一款 OLAP 引擎,火山引…...
深挖“范围经济”穿越产业周期:TCL电子持续繁荣的密码
作者 | 曾响铃 文 | 响铃说 1878年,爱迪生创立了爱迪生电灯公司,14年后,摩根将该公司与另外两家合并成通用电气公司(GE)。 从一个小小的碳丝直流电灯泡开始,历经数次改弦更张,穿越两次世界大…...
Elasticsearch:使用 ESRE 和生成式 AI 了解 TLS 日志错误
作者:DAVID HOPE 本博客介绍了 Elasticsearch 相关性引擎 (ESRE) 及其 Elastic Learned Sparse Encoder 功能的新颖应用,特别是在日志分析中。 最近发布的 Elasticsearch Relevance Engine™ (ESRE™) 包含一系列重要功能,可增强搜索能力…...
Swing程序设计(3)JDialog窗体
文章目录 前言一、JDialog窗体的介绍二、JDialog窗体的使用 1.JDialog的常用构造方法2.实例展示及分析总结 前言 JDialog窗体是窗体中的另一种类型的窗体,指对话框窗体。与JFrame窗体类似,绝大部分对于JFrame窗体使用的方法,对于JDialog窗体也…...
web vue 项目 Docker化部署
Web 项目 Docker 化部署详细教程 目录 Web 项目 Docker 化部署概述Dockerfile 详解 构建阶段生产阶段 构建和运行 Docker 镜像 1. Web 项目 Docker 化部署概述 Docker 化部署的主要步骤分为以下几个阶段: 构建阶段(Build Stage):…...
Admin.Net中的消息通信SignalR解释
定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...
为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?
在建筑行业,项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升,传统的管理模式已经难以满足现代工程的需求。过去,许多企业依赖手工记录、口头沟通和分散的信息管理,导致效率低下、成本失控、风险频发。例如&#…...
srs linux
下载编译运行 git clone https:///ossrs/srs.git ./configure --h265on make 编译完成后即可启动SRS # 启动 ./objs/srs -c conf/srs.conf # 查看日志 tail -n 30 -f ./objs/srs.log 开放端口 默认RTMP接收推流端口是1935,SRS管理页面端口是8080,可…...
PHP 8.5 即将发布:管道操作符、强力调试
前不久,PHP宣布了即将在 2025 年 11 月 20 日 正式发布的 PHP 8.5!作为 PHP 语言的又一次重要迭代,PHP 8.5 承诺带来一系列旨在提升代码可读性、健壮性以及开发者效率的改进。而更令人兴奋的是,借助强大的本地开发环境 ServBay&am…...
Ubuntu Cursor升级成v1.0
0. 当前版本低 使用当前 Cursor v0.50时 GitHub Copilot Chat 打不开,快捷键也不好用,当看到 Cursor 升级后,还是蛮高兴的 1. 下载 Cursor 下载地址:https://www.cursor.com/cn/downloads 点击下载 Linux (x64) ,…...
【Linux】自动化构建-Make/Makefile
前言 上文我们讲到了Linux中的编译器gcc/g 【Linux】编译器gcc/g及其库的详细介绍-CSDN博客 本来我们将一个对于编译来说很重要的工具:make/makfile 1.背景 在一个工程中源文件不计其数,其按类型、功能、模块分别放在若干个目录中,mak…...
车载诊断架构 --- ZEVonUDS(J1979-3)简介第一篇
我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 做到欲望极简,了解自己的真实欲望,不受外在潮流的影响,不盲从,不跟风。把自己的精力全部用在自己。一是去掉多余,凡事找规律,基础是诚信;二是…...
大数据治理的常见方式
大数据治理的常见方式 大数据治理是确保数据质量、安全性和可用性的系统性方法,以下是几种常见的治理方式: 1. 数据质量管理 核心方法: 数据校验:建立数据校验规则(格式、范围、一致性等)数据清洗&…...
