课程目录展开/折叠
- 9月份课程直播回放
- 第1课 CSP-J大纲知识专题&初赛真题精讲试学
- 第2课 CSP-J大纲知识专题&初赛真题精讲试学
- 第3课 CSP-J大纲知识专题&初赛真题精讲试学
- 第4课 CSP-J大纲知识专题&初赛真题精讲试学
- 第5课 CSP-J大纲知识专题&初赛真题精讲
- 第6课 CSP-J大纲知识专题&初赛真题精讲
- 第7课 CSP-J大纲知识专题&初赛真题精讲试学
- 第8课 CSP-J大纲知识专题&初赛真题精讲试学
- 第9课 CSP-J大纲知识专题&初赛真题精讲试学
- 第10课 CSP-J大纲知识专题&初赛真题精讲试学
- 第11课 CSP-J大纲知识专题&初赛真题精讲试学
- 第12课 CSP-J大纲知识专题&初赛真题精讲试学
- 第13课 CSP-J大纲知识专题&初赛真题精讲试学
- 第14课 CSP-J大纲知识专题&初赛真题精讲试学
- 第15课 CSP-J大纲知识专题&初赛真题精讲试学
- 第16课 CSP-J大纲知识专题&初赛真题精讲试学
- 第17课 CSP-J大纲知识专题&初赛真题精讲试学
- 第18课 CSP-J大纲知识专题&初赛真题精讲试学
- 第19课 CSP-J大纲知识专题&初赛真题精讲试学
- 第20课 CSP-J大纲知识专题&初赛真题精讲试学
- 第21课 CSP-J大纲知识专题&初赛真题精讲试学
- 第22课 CSP-J大纲知识专题&初赛真题精讲试学
- 第23课 CSP-J大纲知识专题&初赛真题精讲试学
- 第24课 CSP-J大纲知识专题&初赛真题精讲试学
- 第25课 CSP-J大纲知识专题&初赛真题精讲试学
- 第26课 CSP-J大纲知识专题&初赛真题精讲试学
- 8月份课程直播回放
- 第1课 CSP-J大纲知识专题&初赛真题精讲试学
- 第2课 CSP-J大纲知识专题&初赛真题精讲试学
- 第3课 CSP-J大纲知识专题&初赛真题精讲试学
- 第4课 CSP-J大纲知识专题&初赛真题精讲试学
- 第5课 CSP-J大纲知识专题&初赛真题精讲
- 第6课 CSP-J大纲知识专题&初赛真题精讲
- 第7课 CSP-J大纲知识专题&初赛真题精讲
- 第8课 CSP-J大纲知识专题&初赛真题精讲
- 第9课 CSP-J大纲知识专题&初赛真题精讲
- 第10课 CSP-J大纲知识专题&初赛真题精讲
- 第11课 CSP-J大纲知识专题&初赛真题精讲
- 第12课 CSP-J大纲知识专题&初赛真题精讲
- 第13课 CSP-J大纲知识专题&初赛真题精讲
- 第14课 CSP-J大纲知识专题&初赛真题精讲
- 第15课 CSP-J大纲知识专题&初赛真题精讲
- 第16课 CSP-J大纲知识专题&初赛真题精讲
- 第17课 CSP-J大纲知识专题&初赛真题精讲
- 第18课 CSP-J大纲知识专题&初赛真题精讲
- 第19课 CSP-J大纲知识专题&初赛真题精讲
- 第20课 CSP-J大纲知识专题&初赛真题精讲
- 第21课 CSP-J大纲知识专题&初赛真题精讲
- 第22课 CSP-J大纲知识专题&初赛真题精讲
- 第23课 CSP-J大纲知识专题&初赛真题精讲
- 第24课 CSP-J大纲知识专题&初赛真题精讲
- 第25课 CSP-J大纲知识专题&初赛真题精讲
- 第26课 CSP-J大纲知识专题&初赛真题精讲
- 第27课 CSP-J大纲知识专题&初赛真题精讲
- 第28课 CSP-J大纲知识专题&初赛真题精讲
- 第29课 CSP-J大纲知识专题&初赛真题精讲
- 第30课 CSP-J大纲知识专题&初赛真题精讲
- 第31课 CSP-J大纲知识专题&初赛真题精讲
- 第32课 CSP-J大纲知识专题&初赛真题精讲
- 第33课 CSP-J大纲知识专题&初赛真题精讲
- 第34课 CSP-J大纲知识专题&初赛真题精讲
- 第35课 CSP-J大纲知识专题&初赛真题精讲
- 第36课 CSP-J大纲知识专题&初赛真题精讲
- 第37课 CSP-J大纲知识专题&初赛真题精讲
- 第38课 CSP-J大纲知识专题&初赛真题精讲
- 第39课 CSP-J大纲知识专题&初赛真题精讲
- 第40课 CSP-J大纲知识专题&初赛真题精讲
- 7月份课程直播回放
- 第1课 CSP-J初赛试题分析精讲试学
- 第2课 CSP-J复赛试题分析精讲试学
- 第3课 CSP-J初赛试题分析精讲试学
- 第4课 CSP-J复赛试题分析精讲试学
- 第5课 CSP-J初赛试题分析精讲
- 第6课 CSP-J复赛试题分析精讲
- 第7课 CSP-J初赛试题分析精讲
- 第8课 CSP-J复赛试题分析精讲
- 第9课 CSP-J初赛试题分析精讲
- 第10课 CSP-J复赛试题分析精讲
- 第11课 CSP-J初赛试题分析精讲
- 第12课 CSP-J复赛试题分析精讲
- 第13课 CSP-J初赛试题分析精讲
- 第14课 CSP-J复赛试题分析精讲
- 第15课 CSP-J初赛试题分析精讲
- 第16课 CSP-J复赛试题分析精讲
- 第17课 CSP-J初赛试题分析精讲
- 第18课 CSP-J复赛试题分析精讲
- 第19课 CSP-J初赛试题分析精讲
- 第20课 CSP-J复赛试题分析精讲
- 第21课 CSP-J初赛试题分析精讲
- 第22课 CSP-J复赛试题分析精讲
- 第23课 CSP-J初赛试题分析精讲
- 第24课 CSP-J复赛试题分析精讲
- 第25课 CSP-J初赛试题分析精讲
- 第26课 CSP-J复赛试题分析精讲
- 第27课 CSP-J初赛试题分析精讲
- 第28课 CSP-J复赛试题分析精讲
- 第29课 CSP-J初赛试题分析精讲
- 第30课 CSP-J复赛试题分析精讲
- 第31课 CSP-J初赛试题分析精讲
- 第32课 CSP-J复赛试题分析精讲
- 第33课 CSP-J初赛试题分析精讲
- 第34课 CSP-J复赛试题分析精讲
- 第35课 CSP-J初赛试题分析精讲
- 第36课 CSP-J复赛试题分析精讲
- 第37课 CSP-J初赛试题分析精讲
- 第38课 CSP-J复赛试题分析精讲
第20课 CSP-J大纲知识专题&初赛真题精讲
视频时长:54:51播放快捷键
播放/暂停:空格(或鼠标单击) 全屏:F(或鼠标双击) 退出全屏:Esc
快进10 / 30 / 60秒:方向键→ / Ctrl + 方向键→ / Shift + 方向键→
快退10 / 30 / 60秒:方向键← / Ctrl + 方向键← / Shift + 方向键←
本节课讲解配套PPT&板书:
















本节课讲解到的源代码
源代码下载:第20课 CSP-J大纲知识专题&初赛真题精讲-源代码下载
1. C1144 - 城市交通-1
#include <bits/stdc++.h>
using namespace std;
int n;
int mp[105][105];
int dp[105]; // dp[3] 代表顶点3到顶点n的最短距离
int main()
{
cin >> n;
for (int i = 1; i <= n; i ++)
{
for (int j = 1; j <= n; j ++)
cin >> mp[i][j];
}
for (int i = 1; i <= n; i ++)
dp[i] = INT_MAX;
dp[n] = 0;
for (int i = n - 1; i >= 1; i --)
{
// int res = INT_MAX;
for (int j = i + 1; j <= n; j ++)
{
if (mp[i][j])
{
dp[i] = min(dp[i], mp[i][j] + dp[j]);
// mp[i][j] + dp[j]
// res = min(res, mp[i][j] + dp[j]);
}
}
// dp[i] = res;
}
cout << dp[1];
return 0;
}
2. C1144 - 城市交通-2
#include <bits/stdc++.h>
using namespace std;
int n;
int mp[105][105];
int dp[105]; // dp[3] 代表顶点3到顶点n的最短距离
int main()
{
cin >> n;
for (int i = 1; i <= n; i ++)
{
for (int j = 1; j <= n; j ++)
cin >> mp[i][j];
}
for (int i = 1; i <= n; i ++)
dp[i] = INT_MAX;
dp[n] = 0;
for (int i = n - 1; i >= 1; i --)
{
for (int j = i + 1; j <= n; j ++)
{
if (mp[i][j])
dp[i] = min(dp[i], mp[i][j] + dp[j]);
}
}
cout << dp[1];
return 0;
}
3. C1144 - 城市交通-3
#include <bits/stdc++.h>
using namespace std;
int n;
int mp[105][105];
int dp[105]; // dp[3] 代表顶点3到顶点n的最短距离
int main()
{
cin >> n;
for (int i = 1; i <= n; i ++)
{
for (int j = 1; j <= n; j ++)
cin >> mp[i][j];
}
fill(dp, dp + n + 1, INT_MAX);
dp[n] = 0;
for (int i = n - 1; i >= 1; i --)
{
for (int j = i + 1; j <= n; j ++)
{
if (mp[i][j])
dp[i] = min(dp[i], mp[i][j] + dp[j]);
}
}
cout << dp[1];
return 0;
}
4. C1144 - 城市交通-4
#include <bits/stdc++.h>
using namespace std;
int n;
int mp[105][105];
int dp[105]; // dp[3] 代表顶点3到顶点n的最短距离
int main()
{
cin >> n;
for (int i = 1; i <= n; i ++)
{
for (int j = 1; j <= n; j ++)
cin >> mp[i][j];
}
// fill(dp, dp + n + 1, INT_MAX);
memset(dp, 0x3f, sizeof(dp)); // 0x3f 3f 3f 3f
dp[n] = 0;
for (int i = n - 1; i >= 1; i --)
{
for (int j = i + 1; j <= n; j ++)
{
if (mp[i][j])
dp[i] = min(dp[i], mp[i][j] + dp[j]);
}
}
cout << dp[1];
return 0;
}
5. C1144 - 城市交通-5
#include <bits/stdc++.h>
using namespace std;
int n;
int mp[105][105];
int dp[105]; // dp[3] 代表顶点3到顶点n的最短距离
int main()
{
cin >> n;
for (int i = 1; i <= n; i ++)
{
for (int j = 1; j <= n; j ++)
cin >> mp[i][j];
}
for (int i = 1; i <= n; i ++)
dp[i] = INT_MAX;
// 正推
dp[1] = 0;
for (int i = 2; i <= n; i ++)
{
for (int j = 1; j < i; j ++)
{
if (mp[i][j])
{
dp[i] = min(dp[i], mp[i][j] + dp[j]);
}
}
}
cout << dp[n];
return 0;
}
本节课无课后练习
本节课答疑
建议大家有问题先通过AI答疑(比如:DeepSeek 等),AI时代需要学会使用AI辅助学习
陈远龙老师视频讲解:如何使用DeepSeek进行答疑?
通过AI未能获得满意解答的,可以联系陈远龙老师答疑
目录