今天是2023.4.8号,早上的刚刚参加完蓝桥杯,下午看到csdn官方的活动,心血来潮写下以下内容,如有不适或者错误请见谅。
与编程不得不说的爱恨情仇
在2021我成功摆脱了高中生这个身份,我称为了一名大学牲!
我大一的时候是在机械设计制造及自动化这个专业,在大一上学期的时候偶然学习到了C语言,我那个时候觉得编程很有趣,比机械这种专业好多人,刚好转专业的报名通知出现了,我就试着去报名了,没想到直接转到了软件工程专业,成为了一位科班人员。
跟好朋友一起探讨题目的解法和优化:
我们经常一起探讨题目的解法和优化,有时候会一起参加活动,聊天探讨问题。
在csdn的收获:
在csdn写了大半年的博客,认识了很多大佬和志同道合的朋友,也收获了很多粉丝
在几篇博客中也收获很多人认可和阅读
与csdn的日常
csdn写博客其实是很花时间的,我之前有思考过一个问题:学习和更新博客是否冲突,时间上好像不够用?
我写了一段博客后,我发现写博客的过程,你需要考虑思路的逻辑性和框架,要让别人看得懂(其实大部分是给自己看的,复习等等),所以你写完博客,你对知识会更加理解。
因此我觉得写博客本身是一种学习的方式,不存在冲突。
在平凡的日子偶然的成就感:
我最近写出来一道让我很有成就感的题目:(可能对大佬很简单,但对于那个时候的我还是很有成就感,大佬勿喷,谢谢啦!!!)
跳石板_牛客题霸_牛客网 (nowcoder.com)
#include<iostream>
#include<vector>
#include<cmath>
using namespace std;
int StepNum(int n, int m)
{
vector<int>step(m + 1, 0);
step[n] = 1;//先加了一步,后面得-1;
for (int i = n; i < m; i++)
{
vector<int>div;
if (step[i] == 0)continue;
//因为我们之前给步数加了约数,这个就是找到下一个不为0的位置(也就是之前步数+约数=新步数的位置)
for (int j = 2; j <= sqrt(i); j++)
{//计算每个i的约数
if (i % j == 0)
{
div.push_back(j);
if (i / j != j)
div.push_back(i / j);
}
}
for (int j = 0; j < div.size(); j++)
{
if (div[j] + i <= m && step[i + div[j]] != 0)
step[div[j] + i] = min(step[div[j] + i], step[i] + 1);
else if (div[j] + i <= m)step[div[j] + i] = step[i] + 1;
//如果div[j]+i(约数+下标等于下一个的下标
// 如果step【下一个下标】等于0,就step【下一个下标】=当前步数+1
//如果不为1,取他们的最小值
}
}
if (step[m] == 0)
return -1;
else
return step[m] - 1;
}
int main()
{
int n, m;
cin >> n >> m;
cout << StepNum(n, m) << endl;
return 0;
}
对未来的憧憬:
- 现在我在我们学校老师的实验室,希望后面参加的比赛可以取得好的成绩
- 我现在是在学C++和Linux,但是游戏行业对我比较有吸引力,后面可能会去学习相关的知识,希望后面可以从事C++或者游戏岗位。
版权归原作者 学IT的小卢 所有, 如有侵权,请联系我们删除。