ZOJ3321

//there is at most one edge between two nodes.

因为这句话的局限性,又要满足环,那么一定是每个点度为2,然后为n节点的一个环

//#include <bits/stdc++.h>
#include<cstdio>
#include<string.h>
#include<algorithm>
using namespace std;
typedef long long LL; //there is at most one edge between two nodes. const int N=20;
int ma[N][N],n,m,out[N];
bool flag,vis[N]; void DFS(int u,int num)
{
if(flag)
return;
for(int i=1;i<=n;i++)
{
if(ma[u][i]&&num==n&&i==1)
{
flag=true;
return;
}
if(ma[u][i]&&!vis[i])
{
vis[i]=true;
DFS(i,num+1);
}
}
} int main()
{
while(~scanf("%d%d",&n,&m))
{
int u,v;
memset(ma,0,sizeof(ma));
memset(out,0,sizeof(out));
while(m--)
{
scanf("%d%d",&u,&v);
ma[u][v]=ma[v][u]=1;
out[u]++;
out[v]++;
}
bool ff=true;
for(int i=1;i<=n;i++)
{
if(out[i]!=2)
{
ff=false;
break;
}
}
if(!ff)
{
puts("NO");
continue;
}
memset(vis,false,sizeof(vis));
flag=false;
vis[1]=true;
DFS(1,1);
if(flag)
puts("YES");
else
puts("NO");
}
return 0;
}

ZOJ3317

题意:

租的人,房子数量。

n行进入时间,出去时间。

每次进入有房间则给一个房间,按房间编号从小到大租出。

求每个进入的人的房间号。

思路:

离线处理。

先把每个人按照进入时间排序,每次从小到大枚举m个房间有没有人居住。

//#include <bits/stdc++.h>
#include<cstdio>
#include<string.h>
#include<algorithm>
using namespace std;
typedef long long LL; const int N=1e2+10;
struct asd{
int u,v;
int id;
};
asd q[N];
int n,m,ans[N]; bool cmp(asd x,asd y)
{
if(x.u==y.u)
return x.id<y.id;
return x.u<y.u;
} int main()
{
while(~scanf("%d%d",&n,&m))
{
if(!n&&!m) break;
int u,v;
bool flag;
for(int i=1;i<=n;i++)
{
scanf("%d%d",&u,&v);
q[i].id=i;
q[i].u=u;
q[i].v=v;
}
sort(q+1,q+n+1,cmp);
memset(ans,0,sizeof(ans));
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
flag=true;
for(int k=1;k<i;k++){
if(ans[q[k].id]==j && q[k].v>q[i].u){
flag=false;break;
}
}
if(flag)
{
ans[q[i].id]=j;
break;
} }
}
for(int i=1;i<=n;i++)
printf("%d\n",ans[i]);
}
return 0;
}

ZOJ3321,ZOJ3317的更多相关文章

  1. Pyhton开源框架(加强版)

    info:Djangourl:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC)风格的 ...

  2. MPlayer

    名称   mplayer − 电影播放器 mencoder − 电影编解码器 概要   mplayer [选项] [文件|URL|播放列表|−] mplayer [选项] 文件1 [指定选项] [文件 ...

  3. python 爬取腾讯微博并生成词云

    本文以延参法师的腾讯微博为例进行爬取并分析 ,话不多说 直接附上源代码.其中有比较详细的注释. 需要用到的包有 BeautifulSoup WordCloud jieba # coding:utf-8 ...

  4. 面经 cisco

    1. 优先级反转问题及解决方法 (1)什么是优先级反转 简单从字面上来说,就是低优先级的任务先于高优先级的任务执行了,优先级搞反了.那在什么情况下会生这种情况呢? 假设三个任务准备执行,A,B,C,优 ...

  5. linux驱动(续)

    网络通信 --> IO多路复用之select.poll.epoll详解 IO多路复用之select.poll.epoll详解      目前支持I/O多路复用的系统调用有 select,psel ...

  6. HttpServletRequest对象(一)

    javaweb学习总结(十)——HttpServletRequest对象(一) 一.HttpServletRequest介绍 HttpServletRequest对象代表客户端的请求,当客户端通过HT ...

  7. 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题

    背景起因: 记起以前的另一次也是关于内存的调优分享下   有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...

  8. 先说IEnumerable,我们每天用的foreach你真的懂它吗?

    我们先思考几个问题: 为什么在foreach中不能修改item的值? 要实现foreach需要满足什么条件? 为什么Linq to Object中要返回IEnumerable? 接下来,先开始我们的正 ...

  9. JavaScript之父Brendan Eich,Clojure 创建者Rich Hickey,Python创建者Van Rossum等编程大牛对程序员的职业建议

    软件开发是现时很火的职业.据美国劳动局发布的一项统计数据显示,从2014年至2024年,美国就业市场对开发人员的需求量将增长17%,而这个增长率比起所有职业的平均需求量高出了7%.很多人年轻人会选择编 ...

随机推荐

  1. 5 Ways to Make Your Hive Queries Run Faster

    5 Ways to Make Your Hive Queries Run Faster Technique #1: Use Tez  Hive can use the Apache Tez execu ...

  2. thinkphp3.2独立分组的建立

    很简单,就是把默认的Home模块复制一份,放到Admin目录下,同时把namespace改成namespace Admin\Controller即可,配置项如下:

  3. CodeSign相关

    要让苹果App在真机上跑,需要私钥(PrivateKey),证书(Certificate)和描述文件(Provisioning Profile). (一) 安全基础: 1.非对称加密: 2.Hash码 ...

  4. linux apache 用户认证:

    root@ubuntu:/# htpasswd -c /etc/apache2/password zhangsan (-c表示要创建一个password密码文件,文件存放目录是/etc/apache2 ...

  5. (深入理解计算机系统)AT&T汇编指令

    AT&T汇编指令学习(GCC) 寄存器命名原则: 相比inter语法,AT&T语法格式要求所有的寄存器都必须加上取值符"%". 操作码命令格式: 源/目的操作数顺序 ...

  6. sdut oj 3058 路线冲突问题(BFS+记录路径算法,回溯路径 )

    路线冲突问题 题目描述 给出一张地图,地图上有n个点,任意两点之间有且仅有一条路.点的编号从1到n. 现在兵团A要从s1到e1,兵团B要从s2到e2,问两条路线是否会有交点,若有则输出交点个数,否出输 ...

  7. Python GIL、线程锁、信号量及事件

    GIL是什么? GIL并不是Python的特性,它是在实现Python解析器(CPython)时所引入的一个概念.就好比C++是一套语言(语法)标准,但是可以用不同的编译器来编译成可执行代码.有名的编 ...

  8. C++中map容器的说明和使用技巧

    C++中map容器提供一个键值对容器,map与multimap差别仅仅在于multiple允许一个键对应多个值. 一.map的说明 1 头文件 #include <map> 2 定义 ma ...

  9. hdu 6053(To my boyfriend)

    -----------题目链接------------- 题目描述: 给定一个矩阵,定义\(f(A)\) 为矩阵中不同元素的个数.现在要求\(f(A)\)的期望. 解法: 首先来暴力的,复杂度大约:\ ...

  10. Linux-Nginx和NFS

    1 虚拟化 查看系统信息 cat /proc/meninfo cat /proc/cpuinfo 其中 flags里面的信息可以查看该cpu是否支持虚拟化 flags上有vmx svm等表示可以虚拟化 ...