网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
for(int i=1;i<=2019;i++){
if(ifCon(i)){
sum+=pow(i,3);
}
}
cout<<sum<<endl;
return 0;
}
题目答案:4097482414389
考点:注意sum要用long long
---
### 试题B:字串数字(5分)
![在这里插入图片描述](https://img-blog.csdnimg.cn/81cad2c06e3f4bb088f765ff60208173.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5byA5b-D5pif5Lq6,size_20,color_FFFFFF,t_70,g_se,x_16)
#include<bits/stdc++.h>
using namespace std;
int main(){
string list=“ABCDEFGHIJKLMNOPQRSTUVWXYZ”;
string x=“LANQIAO”;
long long sum=0;
int y=0; //保存次方
for(int i=x.length()-1;i>=0;i–,y++){
int temp=list.find(x[i])+1;
sum+=temp*pow(26,y);
}
cout<<sum<<endl;
return 0;
}
题目答案:3725573269
---
### 试题C:质数(10分)
![在这里插入图片描述](https://img-blog.csdnimg.cn/28126af7216d418092864ad3bba61999.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5byA5b-D5pif5Lq6,size_19,color_FFFFFF,t_70,g_se,x_16)
#include<bits/stdc++.h>
using namespace std;
bool isPrime(int n){
if(n<=1){
return false;
}
else if(n2){
return true;
}
else{
for(int i=2;i<n;i++){
if(n%i0){
return false;
}
}
return true;
}
}
int main(){
int count=0;
int i=0;
while(count!=2019){
i++;
if(isPrime(i)){
count++;
}
}
cout<<i<<endl;
}
---
### 试题D:最短路(10分)
![在这里插入图片描述](https://img-blog.csdnimg.cn/e98a2d02d080404eb0d7ef8bfac3cce6.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5byA5b-D5pif5Lq6,size_20,color_FFFFFF,t_70,g_se,x_16)
---
### 试题E:RSA解密(15分)
![在这里插入图片描述](https://img-blog.csdnimg.cn/5ac31e04214a494aaede50893cd0896b.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5byA5b-D5pif5Lq6,size_20,color_FFFFFF,t_70,g_se,x_16)
import libnum
import gmpy2
e=212353
c=20190324
n=1001733993063167141
print(libnum.factorize(n))
p=1123984201
q=891234941
phi=(p-1)*(q-1)
d=gmpy2.invert(e,phi)
print(pow(c,d,n))
题目答案:579706994112328949
这题我暂时用的是python写的,一定会把C++的补上的,用C++写确实比Python困难很多。
主要在于,大整数分解,求逆元
---
### 试题F:Fibonacci数列与黄金分割(15分)
![在这里插入图片描述](https://img-blog.csdnimg.cn/1f93352604ee45838a956feeeb987163.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5byA5b-D5pif5Lq6,size_19,color_FFFFFF,t_70,g_se,x_16)
先按正常逻辑写
#include<bits/stdc++.h>
using namespace std;
long long F(long long n){
if(n1 || n2){
return 1;
}
else{
return F(n-1)+F(n-2);
}
}
int main(){
long long n;
cin>>n;
cout<<fixed<<setprecision(8)<<F(n)*1.0/F(n+1)<<endl;
return 0;
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/54ec33901e604070af5b090ea23268f8.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5byA5b-D5pif5Lq6,size_20,color_FFFFFF,t_70,g_se,x_16)
因为当输入的n过大,递归占用内存无比大,几乎算不出来
发现只要超过一个数之后,值都一样,测试出来是20
更改代码
#include<bits/stdc++.h>
using namespace std;
long long F(long long n){
if(n1 || n2){
return 1;
}
else{
return F(n-1)+F(n-2);
}
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新