当前位置: 首页 > wzjs >正文

院校网站建设对比分析实训报总结项目推广方案怎么写

院校网站建设对比分析实训报总结,项目推广方案怎么写,wordpress内容导航,wordpress标签不输出文章4.有向无环的路径数 - 蓝桥云课 问题描述 给定 N 个节点 M 条边的有向无环图,请你求解有多少条 1 到 N 的路径。 由于答案可能很大,你只需要输出答案对 998244353 取模后的结果。 输入格式 第一行包含 2 个正整数 N,M,表示有向无环图的节…

4.有向无环的路径数 - 蓝桥云课

问题描述

给定 N 个节点 M 条边的有向无环图,请你求解有多少条 1 到 N 的路径。

由于答案可能很大,你只需要输出答案对 998244353 取模后的结果。

输入格式

第一行包含 2 个正整数 N,M,表示有向无环图的节点数和边数。

之后 M 行,每行给定 2 个正整数 u,v (ueqv 且 1≤u,v≤N),表示图中存在一条有向边 (u,v)。

输出格式

输出一行,包含一个整数,表示答案,答案对 998244353 取模后的结果。

样例输入

4 4
1 2
2 3
1 3
3 4

样例输出

2

评测数据规模

对于所有测评数据,1≤N,M≤1e5。

思路:

暴力搜
代码如下:
 

#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
ll n,m,ans,tot;
const ll N = 1e5+10;
const ll mod = 998244353;
ll head[N];
struct Edge{ll next;ll to;
}e[N];
bool vis[N];
void add(ll u,ll v)
{tot++;e[tot].next = head[u];e[tot].to = v;head[u] = tot;
}
void dfs(ll x)
{if(x == n){ans++;ans = ans % mod;return;}ll u = head[x];while(u != -1){ll to = e[u].to;if(!vis[to]){vis[to] = true;dfs(to);vis[to] = false;	}u = e[u].next;}
}
int main(void)
{ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin >> n >> m;for(ll i = 1 ; i <= n ; i++)head[i] = -1;for(ll i = 1 ; i <= m ; i++){ll u,v;cin >> u >> v;add(u,v);}vis[1] = true;dfs(1);cout << ans;return 0;} 

思路:

拓扑排序和dp‘

代码如下:

#include<iostream>
#include<algorithm>
#include<queue>
using namespace std;
typedef long long ll;
ll n,m,ans,tot;
const ll N = 1e5+10;
const ll mod = 998244353;
ll head[N],rd[N],dis[N];
struct Edge{ll next;ll to;
}e[N];
bool vis[N];
void add(ll u,ll v)
{tot++;e[tot].next = head[u];e[tot].to = v;head[u] = tot;
}int main(void)
{ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);queue <ll> pq;cin >> n >> m;for(ll i = 1 ; i <= n ; i++)head[i] = -1;for(ll i = 1 ; i <= m ; i++){ll u,v;cin >> u >> v;add(u,v);rd[v]++;}bool flag = false;for(ll i = 1 ; i <= n ; i++){if(rd[i] == 0){pq.push(i);if(i == 1){dis[i] = 1;flag = true;}}}while(!pq.empty()){ll pos = pq.front();pq.pop();if(pos == 1 && !flag){dis[pos] = 1;flag = true;}ll u = head[pos];while(u != -1){ll to = e[u].to;rd[to]--;dis[to] = (dis[to] + dis[pos])%mod; if(rd[to] == 0){pq.push(to);}u = e[u].next;}	 }cout << dis[n];return 0;} 


文章转载自:

http://HqIr6Ywk.kqkmx.cn
http://AkdmKxwm.kqkmx.cn
http://HvJSOknP.kqkmx.cn
http://UW7vGwas.kqkmx.cn
http://P8EIktBP.kqkmx.cn
http://AWKMlUuR.kqkmx.cn
http://hHnfJwWj.kqkmx.cn
http://FjNIq1EC.kqkmx.cn
http://jhDODdPP.kqkmx.cn
http://yNPYS2kJ.kqkmx.cn
http://K26wrJJn.kqkmx.cn
http://8mGeR4cd.kqkmx.cn
http://elR1V6e9.kqkmx.cn
http://crYIK3qF.kqkmx.cn
http://r7dQwvLh.kqkmx.cn
http://j06VXwYq.kqkmx.cn
http://WoupLkd0.kqkmx.cn
http://ymWka4ZH.kqkmx.cn
http://YZtDJvPm.kqkmx.cn
http://3cU3LCMU.kqkmx.cn
http://PNSYYt2D.kqkmx.cn
http://wQYsWcXJ.kqkmx.cn
http://TIJ8rcXN.kqkmx.cn
http://aWulRdaZ.kqkmx.cn
http://n9m0OcWK.kqkmx.cn
http://Ws3hNIBn.kqkmx.cn
http://k31F5714.kqkmx.cn
http://7jwKNanj.kqkmx.cn
http://aBQl28K4.kqkmx.cn
http://Ov9pmv0e.kqkmx.cn
http://www.dtcms.com/wzjs/600823.html

相关文章:

  • 企业网站做百度小程序西安网站建设小程序
  • 湛江市建网站明薇通网站建设价格
  • 虹口基础微网站开发wordpress论坛插件
  • 网上花店网站建设规划书番禺网站建设多少钱
  • 网站动图怎么做公司用的管理系统
  • 都江堰旅游门户网站已经收录大规模修改收录页面对网站有影响吗
  • 手机端网站搭建网站seo查询
  • 上海建网站手机app设计师必看的10个网站
  • 贵州建设职业技术学院网站查成绩查询WordPress文章添加版权信息
  • 网站切图是指什么wentommy wordpress
  • 郴州网站建设解决方案网站换空间 site
  • 郑州做网站助企wordpress 获取分类列表
  • 企业网站建设流程及费用广州哪里有做网站
  • 建立一个网站需要花多少钱docker查看wordpress
  • 建站系统运营开发h5网站开发
  • 网站建设与网页设计制作做网站建设的注意事项
  • 如何做收费影视资源网站计算机作业做网站
  • 如何做淘宝网站重庆皇华建设集团有限公司网站
  • wordpress课件站模板499可以做网站
  • 网站建设以及网页设计需要会什么做中英双语切换的网站
  • 秦皇岛昌黎县建设局网站哈尔滨营销型网站制作
  • 做视频网站用哪个cmswordpress安装第二步500错误
  • 游戏娱乐网站建设网店美工实训报告总结2000字
  • 永宝网站建设招聘信息网站域名怎么用
  • 网站做调查问卷给钱的兼职html网页制作房地产页面
  • 电商网站建设建站方案网站存储空间
  • 建设银行官方网站购房贷款利率计算机网站开发和软件开发
  • 网站显示备案号外贸网站搜索 引擎优化方法
  • 企业网站一年多少钱上海南桥网站建设
  • 职业院校专题建设网站怎么开网店挣钱