题目

l2-4网红打卡攻略
题意: 略。
思路: 按给定的序列模拟一下即可,如果某个点出现次数不为1,说明不符合条件,或者中间存在点不可达。忘了把不符合条件的情况设为INF,wa了半天。
时间复杂度: O(k*n)
代码:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int,int> PII;
const int N = 502;
#define int long long
const int INF = 1e12;
int n,m,k,T;
int a[N][N];
int ans[N];
int vis[N];
int tot;
#define fir(i,a,b) for(int i=a;i<=b;++i)
#define mem(a,x) memset(a,x,sizeof(a))
bool check()
{for(int i=1;i<=n;++i){if(vis[i] != 1) return 0;}return 1;
}
void solve()
{cin>>n>>m;fir(i,0,n){fir(j,0,n){if(i==j) a[i][j] = 0;else a[i][j] = INF;}}for(int i=0;i<m;++i){int x,y,z; cin>>x>>y>>z;a[x][y] = a[y][x] = z;}cin>>k;int idx = 1;for(int t=1;t<=k;++t){int num; cin>>num;vector<int> vv;vv.push_back(0);for(int i=1;i<=n;++i) vis[i] = 0;while(num--){int x; cin>>x;vis[x]++;vv.push_back(x);}if(!check()) {ans[t] = INF;continue;}vv.push_back(0);for(int i=1;i<vv.size();++i){int l = vv[i-1];int r = vv[i];if(a[l][r] == INF){// cout<<l<<" "<<r<<endl;ans[t] = INF;break;}else ans[t] += a[l][r];}if(ans[t] == INF) continue;tot++;if(ans[t] < ans[idx]) idx = t;}cout<<tot<<"\n";cout<<idx<<" "<<ans[idx];
}
signed main(void)
{solve();return 0;
}

l3-1 那就别担心了。
题意: 给定n个点m条边的有向图,统计从st到ed的路径数有多少,并且判断从st开始的路径是否均以ed为终点。
思路: 记忆化搜索即可。如果不记忆化的话会T。终点的方案数默认为1,每个点的方案数是所有儿子的方案数之和。可以发现有很多点的方案数会重复计算,尤其是存在环的情况下。
时间复杂度: O(能过)
代码:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int,int> PII;
const int N = 522;
int n,m,k,T;
vector<int> va[N];
int ans = 0;
bool flag = 1;
int st,ed;
bool vis[N];
int f[N];
int dfs(int cur)
{vis[cur] = 1;if(f[cur]) return f[cur];for(int i=0;i<va[cur].size();++i){int j = va[cur][i];f[cur] += dfs(j);}return f[cur];
}
void solve()
{cin>>n>>m;for(int i=0;i<m;++i){int x,y; cin>>x>>y;va[x].push_back(y);}cin>>st>>ed;f[ed] = 1;ans = dfs(st);cout<<ans<<" ";for(int i=1;i<=n;++i){if(vis[i] && !f[i]){flag = 0;}}if(flag) cout<<"Yes";else cout<<"No";
}
signed main(void)
{solve();return 0;
}

天梯赛自主练习4补题 (如果20年去打有机会拿国二吧,国一不太可能,最后俩题都好难啊)相关推荐

  1. 团体程序设计天梯赛-练习集 L1-059 敲笨钟 (20分)

    L1-059 敲笨钟 (20分) 微博上有个自称"大笨钟V"的家伙,每天敲钟催促码农们爱惜身体早点睡觉.为了增加敲钟的趣味性,还会糟改几句古诗词.其糟改的方法为:去网上搜寻压&qu ...

  2. 关于团体程序设计天梯赛-练习集 L1-009 N个数求和 (20 分) 以及测试点三过不了的一些想法

    本题的要求很简单,就是求N个数字的和.麻烦的是,这些数字是以有理数分子/分母的形式给出的,你输出的和也必须是有理数的形式. 输入格式: 输入第一行给出一个正整数N(≤100).随后一行按格式a1/b1 ...

  3. 国二c语言程序,国家计算机二级c语言题库及答案

    国家计算机二级c语言题库及答案 1.以下程序的输出结果是() #include main () {int a,b,d=241; a=d/100%9 b=(-1)&&(+1); prin ...

  4. 【PTA~21年GPLT团体程序天梯赛-L1题】

    文章目录 L1-01 人与神~5 题解 L1-02 两小时学完C语言~5 题解 L1-03 强迫症~10 题解 L1-04 降价提醒机器人~10 题解 L1-05 大笨钟的心情~15 题解 L1-06 ...

  5. 【GPLT】【2021天梯赛真题题解】【231分】

    文章目录 L1-1 人与神 (5 分) 题目描述 题目分析 L1-2 两小时学完C语言 (5 分) 题目描述 题目分析 L1-3 强迫症 (10 分) 题目描述 题目分析 L1-4 降价提醒机器人 ( ...

  6. 团体程序设计天梯赛 -- 练习集 (L1合集)

    文章目录 L1-001 Hello World (5 分) L1-002 打印沙漏 (20 分) L1-003 个位数统计 (15 分) L1-004 计算摄氏温度 (5 分) L1-005 考试座位 ...

  7. PTA|团体程序设计天梯赛-练习题库集

    文章目录 关于爬取脚本的编写 L1-001 Hello World! (5 分) L1-002 打印沙漏 (15 分) L1-003 个位数统计 (15 分) L1-004 计算摄氏温度 (5 分) ...

  8. 第六届团队程序设计天梯赛 全题目解析讲解

    B站已经录好视频合集:--------------------传送门--------------------- 题目是2021年4月天梯赛决赛原题: 题号 题目名称 L1-1 人与神 L1-2 两小时 ...

  9. 天梯赛 L1-079 天梯赛的善良 (20 分)

    天梯赛 L1-079 天梯赛的善良 (20 分) 题目 天梯赛是个善良的比赛.善良的命题组希望将题目难度控制在一个范围内,使得每个参赛的学生都有能做出来的题目,并且最厉害的学生也要非常努力才有可能得到 ...

最新文章

  1. [网络安全自学篇] 三十三.文件上传之绕狗一句话原理和绕过安全狗(六)
  2. 看动画学算法之:linkedList
  3. 【小夕精选】多轮对话之对话管理(Dialog Management)
  4. 福师计算机在线作业一2,福师《计算机》在线作业二答案.doc
  5. java算法提高求最大值_藍橋杯 算法提高 求最大值
  6. softlockup检测(watchdog)原理(用于检测系统调度是否正常)
  7. win10语音语言服务器,win10系统:朗读女语音库(发音人)安装方法说明
  8. java数学系统总结与展望_总结与展望
  9. linux中sed命令用例,sed解析和用例(马哥视频笔记)
  10. 北航计算机学硕还是专硕,经验教训-2018二战考研北航计算机
  11. Python利用结巴分词进行中文分词
  12. 如何运用js制作简单的登录界面(html)
  13. 高级会计职称计算机考什么,会计高级职称考哪些科目
  14. Spring Cloud Netflix 服务注册与发现 — Eureka 入门案例
  15. 去健身房健身戴什么耳机好、最适合运动健身的健身房耳机推荐
  16. windows批处理脚本bat命令解析【6】常用命令整理
  17. Struts Tiles 框架概述
  18. ORB-SLAM——a Versatile and Accurate Monocular SLAM System)
  19. java基础:注解的定义与使用
  20. 计算机外设配件的主要相关参数有哪些,举例说明计算机外设主要有哪些设备?...

热门文章

  1. 2022年长沙护士资格考试综合练习题及答案
  2. python 递归函数 三角形_数据结构-python(2)-递归
  3. 安装atari,出现错误“self._handle = _dlopen(self._name, mode) OSError: [WinError 126] 找不到指定模块”
  4. Android Studio编译慢
  5. html中的sort方法,JavaScript_javascript中sort() 方法使用详解,语法:arrayObject.sort(sortby);参 - phpStudy...
  6. matlab中quat2angle,cord2quat.m
  7. 手把手教会你-棋盘覆盖算法以及代码实现!!
  8. 删除华为mate40手机桌面的“热门推荐”
  9. R语者小case之——从GTF文件生成注释表格做基因ID转换
  10. Java重启jar包