Brexit Gym - 101490C
时间:2019-08-21
本文章向大家介绍Brexit Gym - 101490C,主要包括Brexit Gym - 101490C使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
题目链接:Brexit
vector的使用(vector存边),巧用queue,相当于Bfs
1 /* */ 2 # include <iostream> 3 # include <cstdio> 4 # include <cstring> 5 # include <string> 6 # include <memory> 7 # include <cstdlib> 8 # include <cmath> 9 # include <climits> 10 # include <cctype> 11 # include <cassert> 12 # include <utility> 13 # include <deque> 14 # include <queue> 15 # include <stack> 16 # include <vector> 17 # include <bitset> 18 # include <set> 19 # include <map> 20 # include <functional> 21 # include <algorithm> 22 using namespace std; 23 24 # define lson l,m,rt<<1 25 # define rson m+1,r,rt<<1|1 26 # define lowbit(x)(x&(-x)) 27 # define lcm(a,b)(a*b/__gcd(a,b)) 28 typedef long long ll; 29 const ll mod=1e9+7; 30 const int maxn=2e5+10; 31 const double eps=1e-18; 32 const double pi=acos(-1.0); 33 int n, m, c, l; 34 int de[maxn]; 35 vector<int>nex[maxn]; 36 queue<int>qu; 37 int flag[maxn]; 38 39 int main() 40 { 41 int t; 42 while( ~ scanf("%d%d%d%d", &n, &m, &c, &l) ) 43 { 44 for(int i=1; i<=n; i++ ) 45 { 46 nex[i].clear(); 47 de[i]=0; 48 flag[i]=0; 49 } 50 51 while( !qu.empty() ) 52 qu.pop(); 53 for(int i=1; i<=m; i++ ) 54 { 55 int u, v; 56 scanf("%d%d", &u, &v); 57 nex[u].push_back(v); 58 nex[v].push_back(u); 59 de[u]++; 60 de[v]++; 61 } 62 63 flag[l]=1; 64 qu.push(l); 65 while( !qu.empty() ) 66 { 67 int cur=qu.front(); 68 qu.pop(); 69 for(int i=0; i<nex[cur].size(); i++ ) 70 { 71 de[nex[cur][i]]--; 72 if( de[nex[cur][i]]<=nex[nex[cur][i]].size()/2 && flag[nex[cur][i]]==0 ) 73 { 74 flag[nex[cur][i]] = 1;//避免重复入栈 75 qu.push(nex[cur][i]); 76 } 77 } 78 } 79 if( flag[c]==1 ) 80 cout<<"leave"<<endl; 81 else 82 cout<<"stay"<<endl; 83 } 84 return 0; 85 }
原文地址:https://www.cnblogs.com/wsy107316/p/11390676.html
- Laravel 5.5 为响应请求提供的可响应接口
- Laravel 5.5 为 Mailables 类型新增 theme 属性
- Laravel 5.5 的 “vendor:publish” 新增 provider 提示
- 3秒钟,用python破解加密PDF|附工具地址
- [译]Laravel 5.0 之云存储驱动
- [译]Laravel 5.0 之自定义错误页面
- 使用Google的Quickdraw创建MNIST样式数据集!
- CentOS 7 开启 BBR 加速
- 开源项目Minio:提供非结构化数据储存服务
- [译]Laravel 5.0 之事件自动生成
- [译]Laravel 5.0 之 Eloquent 属性转换
- [译]Laravel 5.0 之事件及处理程序
- 自相关与偏自相关的简单介绍
- [译]Laravel 5.0 之命令及处理程序
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- PHP扩展Swoole实现实时异步任务队列示例
- ThinkPHP框架下微信支付功能总结踩坑笔记
- spring-boot-route(九)整合JPA操作数据库
- spring-boot-route(十)多数据源切换
- spring-boot-route(十一)数据库配置信息加密
- PHP中number_format()函数的用法讲解
- php7新特性的理解和比较总结
- PHP之认识(二)关于Traits的用法详解
- 详细分析Python可变对象和不可变对象
- spring-boot-route(十二)整合redis做为缓存
- ThinkPHP框架实现的微信支付接口开发完整示例
- spring-boot-route(十三)整合RabbitMQ消息队列
- spring-boot-route(十四)整合Kafka
- laravel 事件/监听器实例代码
- pytorch 多分类问题,计算百分比操作