Timus - 1213 - Cockroaches!
先上题目:
1213. Cockroaches!
Memory limit: 64 MB
Input
Output
Sample
| input | output |
|---|---|
Gateway |
6 |
题意:给你一个终点的名字,给你一个连通图上不同点之间的关系,点上都有蟑螂。现在每一次可以选着一条边,将一个点上的蟑螂都赶到边的另一端,然后这条边会消失,问至少需要多少步操作才能将所有的蟑螂赶到终点。
其实这就是在问一个联通图上面保留多少条边可以形成一棵树。树的结构是有n个点就有n-1条边。所以只需要记录每一个出现过的端点的名字各一次,树木减一就得出正确答案了。这里可以使用STL的set容器比较简单,当然用map也可以,不过set会快一点,也可以写一棵字典树,不过那样就很费时间了。
上代码:
#include <cstdio>
#include <cstring>
#include <string>
#include <set> using namespace std; typedef struct{
char k[];
}st; set<string> s; int main()
{
st a,b,c;
string x,y;
int tot;
//freopen("data.txt","r",stdin);
scanf("%s",a.k);
x=a.k;
getchar();
tot=;
s.clear();
s.insert(x);
tot++;
while(scanf("%s",a.k),strcmp(a.k,"#")){
getchar();
int l=strlen(a.k);
int j=;
for(int i=;i<l;i++){
if(a.k[i]=='-'){
b.k[j]='\0';
strcpy(c.k,a.k+i+);
break;
}
b.k[j]=a.k[i];
j++;
}
x=b.k;
y=c.k;
if(s.count(x)<=){
s.insert(x);
tot++;
}
if(s.count(y)<=){
s.insert(y);
tot++;
}
}
printf("%d\n",tot-);
return ;
}
1213
Timus - 1213 - Cockroaches!的更多相关文章
- LightOj 1213 - Fantasy of a Summation(推公式 快速幂)
题目链接:http://lightoj.com/volume_showproblem.php?problem=1213 #include <stdio.h> int cases, case ...
- codeforces 719B:Anatoly and Cockroaches
Description Anatoly lives in the university dorm as many other students do. As you know, cockroaches ...
- hdu 1213 How Many Tables 解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1213 有关系(直接或间接均可)的人就坐在一张桌子,我们要统计的是最少需要的桌子数. 并查集的入门题,什 ...
- Timus OJ 1997 Those are not the droids you're looking for (二分匹配)
题目链接:http://acm.timus.ru/problem.aspx?space=1&num=1997 这个星球上有两种人,一种进酒吧至少玩a小时,另一种进酒吧最多玩b小时. 下面n行是 ...
- 1213 How Many Tables(简单并查集)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1213 简单并查集,统计单独成树的数量. 代码: #include <stdio.h> #i ...
- Codeforces 719B Anatoly and Cockroaches
B. Anatoly and Cockroaches time limit per test:1 second memory limit per test:256 megabytes input:st ...
- Timus Online Judge:ural:1006. Square Frames
原题链接:http://acm.timus.ru/problem.aspx?space=1&num=1006 看到题第一反应:这玩意怎么读入…… 本地的话因为是全角字符,会占两个位置,所以需要 ...
- HDU 1213 How Many Tables(模板——并查集)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1213 Problem Description Today is Ignatius' birthday ...
- Timus 1132 Square Root(二次剩余)
http://acm.timus.ru/problem.aspx?space=1&num=1132 题意: 求 x^2 ≡ n mod p p是质数 的 解 本题中n>=1 特判p=2 ...
随机推荐
- oc49--@class
// Person.h #import <Foundation/Foundation.h> @class Car; //#import "Car.h" // 由于imp ...
- hdu 2988(最小生成树 kruskal算法)
Dark roads Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- MySQL 基础 —— 字符串处理
1. 字符串截取 MySQL 字符串截取函数 常见的 MySQL 截取函数有: LEFT(), RIGHT(), SUBSTRING(), SUBSTRING_INDEX() SUBSTRING() ...
- JavaI/O 系统
1.JavaI/O 系统概述 A. 输入输出(I/O):指的是计算机与外部世界,或者一个程序与计算机的其余部分之间的接口 B. 流的概念(流:Stream) 流的基本特性:有数据.有方向 2. 流的 ...
- 一个豆瓣 API 的反向代理配置,旨在解决豆瓣屏蔽小程序请求问题(豆瓣接口 403 问题)
#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #erro ...
- php文件,文件夹
例子代码:<?php$f='/www/htdocs/index.html';$path_parts = pathinfo($f);echo $path_parts['dirname'], &qu ...
- Redis(三)-Ubuntu下安装
Ubuntu 下安装 在 Ubuntu 系统安装 Redi 可以使用以下命令: $sudo apt-get update $sudo apt-get install redis-server 启动 R ...
- APPStore 发布流程及证书申请
最新的 iOS 申请证书与发布流程(2016.7) 今天刚好客户定制的APP需要上架,也提供了新的开发者账号,所以就顺带把申请证书与发布流程写一遍. 证书是什么? 上面这个就是我们申请好证书后,下载到 ...
- Ionic学习记录(一):ionic及cordova安装、创建第一个应用、项目结构
目录: 一.ionic的安装 二.创建第一个应用程序 三.浏览器中预览应用 四.项目结构 五.添加页面 一.ionic的安装 使用Ionic创建和开发应用程序主要通过Ionic命令行实用程序(“CLI ...
- python 进程理论基础
背景知识 顾名思义,进程即一个软件正在进行的过程.进程是对正在运行的程序的一个抽象 进程的概念起源于操作系统,是操作系统的最核心的概念,也是操作系统提供的最古老的也是最重要的抽象概念之一.操作系统的其 ...