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,之后的话会不定期的发布文章,请大家谅解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/77160.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis的java客户端

在Redis官网中提供了各种语言的客户端&#xff0c;地址&#xff1a;https://redis.io/resources/clients/ redis的java客户端 https://redis.io/resources/clients/#java 1.jedis使用 引入依赖 <dependency><groupId>redis.clients</groupId><artifac…

类和对象(1)

文章目录 1.面向过程和面向对象初步认识2.类的引入3.类的定义4.类的访问限定符和封装4.1访问限定符4.2封装 5.类的作用域6.类的实例化6.2结构体内存对齐规则 7.this指针7.2this指针的特性 封装&#xff08;补充&#xff09; 1.面向过程和面向对象初步认识 C面向对象但不纯面向…

时间和空间复杂度

目录 一、如何衡量一个算法的好坏 二、算法效率 三、时间复杂度 3.1 时间复杂度概念 3.2 大O的渐进表示法 3.3 推导大O阶方法 3.4 常见时间复杂度计算 3.5 空间复杂度 一、如何衡量一个算法的好坏 以下是求斐波那契数列的算法&#xff0c;这个算法是好还是不好呢&#xff1f…

ARM Linux DIY(八)USB 调试

前言 V3s 带有一个 USB 接口&#xff0c;将其设置为 HOST 或 OTG 模式&#xff0c;这样可以用来接入键盘、鼠标等 USB 外设。 USB 简介 USB 有两种设备&#xff1a;HOST 和 USB 功能设备。 在 USB2.0 中又引入了一个新的概念 OTG&#xff0c;即设备角色可以动态切换。 切换方…

ctfhub ssrf(3关)

文章目录 内网访问伪协议读取文件扫描端口 内网访问 根据该题目&#xff0c;是让我们访问127.0.0.1/falg.php&#xff0c;访问给出的链接后用bp抓包&#xff0c;修改URL&#xff0c;发送后得到flag&#xff1a; 伪协议读取文件 这题的让我们用伪协议&#xff0c;而网站的目录…

Java 基本类型和包装类

Java 是基于对象的&#xff0c;所以我们都需要以对象的想法来进行思维。 但 Java 又提供了 8 个基本类型&#xff0c;这 8 个基本类型基本上都和数字有关&#xff0c;是直接可以使用的类型。 基本类型大小包装器类型boolean/Booleanchar16bitCharacterbyte8bitByteshort16bitS…

712. 两个字符串的最小ASCII删除和 -- 动规

712. 两个字符串的最小ASCII删除和 class MinimumDeleteSum:"""712. 两个字符串的最小ASCII删除和https://leetcode.cn/problems/minimum-ascii-delete-sum-for-two-strings/"""def solution(self, s1: str, s2: str) -> int:""&qu…

C#下使用IronPython来实现热更新

问题 之前我们学习过Roslyn&#xff0c;他可以动态编译代码并运行&#xff0c;然后通过ALC加载即插即用&#xff0c;但是遇到一些问题感觉无法解决&#xff0c;我编写一个类A在ALC中&#xff0c;另外一个类B要实例化这个A&#xff0c;我想让他们都能灵活卸载&#xff0c;但是如…

wireshark通常无法抓取交换机所有端口报文

Wireshark 是一种网络分析工具&#xff0c;它通常在计算机的网络接口上进行数据包捕获和分析。然而&#xff0c;Wireshark 默认情况下无法直接捕获交换机所有端口的报文。 交换机是一种网络设备&#xff0c;它在局域网内转发数据包&#xff0c;根据目的MAC地址将数据包仅发送到…

使用mybatis批量插入数据

最近在做项目的时候&#xff0c;有些明细数据&#xff0c;一条一条的插入太费资源和时间&#xff0c;所以得需要批量插入&#xff0c;今晚闲来无事写个小demo。 新建工程 <dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis…

「程序员必须掌握的算法」字典树「上篇」

「程序员必须掌握的算法」字典树「上篇」 前言: 在计算机科学中&#xff0c;字典树&#xff08;Trie&#xff09;是一种有序树&#xff0c;用于保存关联数组&#xff08;有时我们称之为“映射”或“字典”&#xff09;。与二叉查找树不同&#xff0c;键不是直接保存在节点中&am…

vue 知识点———— 生命周期

1.什么是生命周期 Vue实例从创建到销毁的过程&#xff0c;叫生命周期。 从开始创建、初始化数据、编译模版、挂载Dom-渲染、更新-渲染、销毁等过程。 2.生命周期一共有几个阶段 创建前/后, 载入前/后,更新前/后,销毁前/销毁后 3.初始化相关属性 beforeCreate&#xff08;创建前…

网络摄像头-流媒体服务器-视频流客户端

取电脑的视频流 当涉及交通事件检测算法和摄像头视频数据处理时&#xff0c;涉及的代码案例可能会非常复杂&#xff0c;因为这涉及到多个组件和技术。以下是一个简单的Python代码示例&#xff0c;演示如何使用OpenCV库捕获摄像头视频流并进行实时车辆检测&#xff0c;这是一个…

您的计算机已被[new_day@torguard.tg].faust 勒索病毒感染?恢复您的数据的方法在这里!

导言&#xff1a; 随着科技的迅速发展&#xff0c;网络空间也变得越来越危险&#xff0c;而勒索病毒则是网络威胁中的一个严重问题。 [ new_daytorguard.tg ].faust 勒索病毒是最新的威胁之一&#xff0c;采用高度复杂的加密技术&#xff0c;将受害者的数据文件锁定&#xff0c…

基于腾讯文档进行应届生个人求职记录

1. 新建一个腾讯文档 电脑登录QQ&#xff0c;点击“腾讯文档”功能键。 2. 可以选择下载客户端&#xff0c;也可以直接进入网页版。&#xff08;本人使用网页版&#xff09; 3. 点击新建&#xff0c;选择在线表格。 4. 编辑表名&#xff0c;表内容。 5. 设置文档权限&#xf…

性能测试工具LoadRunner —— 性能测试流程及结果分析

性能测试目的 1 什么是性能测试? 性能测试是通过性能的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。 负载测试和压力测试都属于性能测试&#xff0c;两者可以结合进行。通过负载测试&#xff0c;确定在各种工作负载下系统的性能&#xff0…

机器学习笔记之最优化理论与方法(七)无约束优化问题——常用求解方法(上)

机器学习笔记之最优化理论与方法——基于无约束优化问题的常用求解方法[上] 引言总体介绍回顾&#xff1a;线搜索下降算法收敛速度的衡量方式线性收敛范围高阶收敛范围 二次终止性朴素算法&#xff1a;坐标轴交替下降法最速下降法(梯度下降法)梯度下降法的特点 针对最速下降法缺…

不关闭Tamper Protection(篡改保护)下强制卸载Windows Defender和安全中心所有组件

个人博客: xzajyjs.cn 背景介绍 由于微软不再更新arm版本的win10系统&#xff0c;因此只能通过安装insider preview的镜像来使用。而能找到的win10 on arm最新版镜像在安装之后由于内核版本过期&#xff0c;无法打开Windows安全中心面板了&#xff0c;提示如下&#xff1a; 尝…

mysql技术文档--之与redo log(重做日志)庖丁解析-超级探索!!!

阿丹&#xff1a; 在刚开始写本文章的是还不太清楚要如何去细啃下这两个体系&#xff0c;在查阅资料的过程中。发现大厂阿里的庖丁解InnoDB系列&#xff0c;详细了的写了很多底层知识&#xff0c;于是基于这个这两个文章才有了阿丹的这篇文章。 整体认知&#xff1a; 在 MySQ…

分享一个python基于数据可视化的智慧社区服务平台源码

&#x1f495;&#x1f495;作者&#xff1a;计算机源码社 &#x1f495;&#x1f495;个人简介&#xff1a;本人七年开发经验&#xff0c;擅长Java、Python、PHP、.NET、Node.js、微信小程序、爬虫、大数据等&#xff0c;大家有这一块的问题可以一起交流&#xff01; &#x1…