4040 EZ系列之奖金
4040 EZ系列之奖金
由于无敌的WRN在2015年世界英俊帅气男总决选中胜出,EZ总经理Mr.Lin心情好,决定给每位员工发奖金。EZ决定以每个人本年在EZ的贡献为标准来计算他们得到奖金的多少。
于是Mr.Lin下令召开m方会谈。每位参加会谈的代表提出了自己的意见:“我认为学生a的奖金应该比b高!”Mr.Lin决定要找出一种奖金方案,满足各位代表的意见,且同时使得总奖金数最少。每位学生奖金最少为100元。
第一行两个整数n,m,表示学生总数和代表数;
以下m行,每行2个整数a,b,表示某个代表认为第a号学生奖金应该比第b号学生高。
若无法找到合法方案,则输出“-1”;否则输出一个数表示最少总奖金。
2 1
1 2
201
80%的数据满足n<=1000,m<=2000;
100%的数据满足n<=10000,m<=20000。
//T了两个点,我也没办法了,stl,人工栈都过不了
woc,t的原因是数组开小了....不知为什么codevs报t
AC代码:
- #include<iostream>
- #include<cstdio>
- using namespace std;
- int top=;
- struct sta
- {
- int sz[];
- int topp()
- {
- return sz[top];
- }
- void push(int x){
- sz[++top]=x;
- }
- void pop(){
- if(top>)
- top--;
- }
- void cl()
- {
- top=;
- }
- int size(){
- return top;
- }
- }stack;
- struct node{
- int u,v,next;
- }edge[];
- int rd[],head[],son[];int money=,step=,monney[];
- int n,m,num=;
- void add_edge(int x,int y)
- {
- edge[num].u=x;
- edge[num].v=y;
- edge[num].next=head[x];
- head[x]=num++;
- }
- void in()
- {
- scanf("%d%d",&n,&m);
- for(int i=;i<=n;i++)
- {
- head[i]=-;
- monney[i]=;
- }
- int x,y;
- for(int i=;i<=m;i++)
- {
- scanf("%d%d",&x,&y);
- add_edge(y,x);
- rd[x]++;
- }
- }
- int sum=;
- void topsort()
- {
- for(int i=;i<=n;i++)
- {
- if(rd[i]==)
- {
- stack.push(i);
- sum++;
- }
- }
- int step;
- while(stack.size()!=)
- {
- step=stack.topp();
- stack.pop();
- for(int i=head[step];i!=-;i=edge[i].next)
- {
- if(monney[edge[i].v]<monney[edge[i].u]+)
- {
- monney[edge[i].v]=monney[edge[i].u]+;
- }
- rd[edge[i].v]--;
- if(rd[edge[i].v]==)
- {
- stack.push(edge[i].v);
- sum++;
- }
- }
- }
- if(sum!=n)cout<<"-1";
- else
- {
- for(int i=;i<=n;i++)
- money+=monney[i];
- cout<<money<<endl;
- }
- return;
- }
- int main()
- {
- in();
- topsort();
- return ;
- }
4040 EZ系列之奖金的更多相关文章
- 4040 EZ系列之奖金 (拓扑)
4040 EZ系列之奖金 时间限制: 1 s 空间限制: 64000 KB 题目等级 : 钻石 Diamond 题目描述 Description 由于无敌的WRN在2015年世界英俊帅 ...
- codevs 4028 EZ系列
4028 EZ系列之愤怒的一天 题目描述 Description 有一天,在某某教学楼某某课室某某课桌旁,某某某大声尖叫起来. 在那一瞬间,勇敢的丁畅大大站了出来,向某某某讨好,结果被揍得半死. ...
- 拓扑排序 codevs 4040 cojs 438
codevs 4040 EZ系列之奖金 时间限制: 1 s 空间限制: 64000 KB 题目等级 : 钻石 Diamond 题目描述 Description 由于无敌的WRN在2015年世界英 ...
- codevs 4014EZ系列
4014 EZ系列之丁畅大大打小怪兽 题目描述 Description 丁畅大大除了喜欢吃鸡腿和番茄炒鸡蛋,还喜欢变成奥特曼去打小怪兽. 有一天,他遇到了迪迦!!!!!!!!!!!!!!!!!!! ...
- 精通Web Analytics 2.0 (13) 第十一章:变身分析忍者的指导原则
精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第十一章:变身分析忍者的指导原则 这个激动人心的一章,分析了几乎所有工作的各个方面. 目标很简单:使用成熟的方法来帮助避免淹死的 ...
- Delphi--最强大的开发工具(欢迎转载)
最强大的开发工具 Delphi 目录 --------------------------------------------------------------------------- 前言 De ...
- Spark入门实战系列--4.Spark运行架构
[注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 1. Spark运行架构 1.1 术语定义 lApplication:Spark Appli ...
- Spark入门实战系列--6.SparkSQL(上)--SparkSQL简介
[注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 .SparkSQL的发展历程 1.1 Hive and Shark SparkSQL的前身是 ...
- Oracle学习系列1-7
Oracle学习系列1 两个服务必须启动: OracleOraDb10g*TNListener 和 OracleService*** 使用sqlplusw先进行环境的设置 set linesize 3 ...
随机推荐
- 【方法】jQuery无插件实现 鼠标拖动切换图片/内容 功能
前言 我就想随便叨逼叨几句,爱看就看几句,不爱看就直接跳过看正文就好啦~ 这个方法是仿写页面时我自己研究出来,可能有比我更简单的方法. 但我不管,因为我没查我不知道,我就觉得我的最好啦,耶耶耶~ 效果 ...
- thinkphp报错Call to undefined method app\index\controller\Index::fetch()
因为要写一个系统,所以又重新下载了thinkphp,然后安装了一下.回忆起这个问题很容易让新手朋友费解.会出现如下报错:Call to undefined method app\index\contr ...
- 使用Cache缓存
存放位置:服务器内存,用于频繁访问且不轻易更改的内容缓存. string CacheKey = "CT1"; //检索指定项, object objModel = Cache.Ge ...
- python网络编程-paramiko
python基础学习日志day8-paramiko 一:简介 Python的paramiko模块,该模块机遇SSH用于连接远程服务器并执行相关操作 现有这样的需求:需要使用windows客户端,远程连 ...
- python并行计算(持续更新)
工作中需要对tensorflow 的一个predict结果加速,利用python中的线程池 def getPPLs(tester,datas): for line in datas: tester(l ...
- [转]python与numpy基础
来源于:https://github.com/HanXiaoyang/python-and-numpy-tutorial/blob/master/python-numpy-tutorial.ipynb ...
- css文字环绕图片--遇到的问题及解决方法
一.前言 需要实现一个文字环绕图片的效果,心想so easy嘛. 1)代码部分 <style> .img-left { border: 3px solid #005588; width:3 ...
- json在线工具
1.json在线格式化工具 http://www.choujone.com/json/ 2.json在线比较工具 http://tlrobinson.net/projects/javascript-f ...
- bzoj 4034(DFS序+线段树)
这个题多了一个操作难度直线上升,看完题解才会写 有一棵点数为 N 的树,以点 1 为根,且树点有边权.然后有 M 个操作,分为三种:操作 1 :把某个节点 x 的点权增加 a .操作 2 :把某个节点 ...
- 一步一步学习IdentityServer3 (8)
IdentityServer3结合Hangfire及Cookies中间件实现授权 Idr3数据库Token过期管理 GlobalConfiguration.Configuration.UseSqlSe ...