UVALIVE 2686 Stargates
2024-09-28 15:05:45
尼玛真深坑合时p[x] = y 就RE,p[y] = x 就AC 、
#include <map>
#include <set>
#include <list>
#include <cmath>
#include <ctime>
#include <deque>
#include <stack>
#include <queue>
#include <cctype>
#include <cstdio>
#include <string>
#include <vector>
#include <climits>
#include <cstdlib>
#include <cstring>
#include <iostream>
#include <algorithm>
#define LL long long
#define PI 3.1415926535897932626
using namespace std;
int gcd(int a, int b) {return a % b == ? b : gcd(b, a % b);}
#define MAXN 6066010
int p[MAXN];
int Find(int x) { return x == p[x] ? x : p[x] = Find(p[x]);}
char op;
char res[];
int src,des,nnn,srcstep,desstep;
int read(char *res)
{
int cnt = , cas = ;
for (int i = ; i < strlen(res); i++)
if (res[i] != ' ' && res[i - ] == ' ') cnt++;
return cnt;
}
int main()
{
while (gets(res))
{
op = tolower(res[]);
int N;
if (op == 'd') {sscanf(res,"%*s %d",&N);for (int i = ; i <= N; i++) p[i] = i; continue;}
int cnt = read(res);
if (cnt == )
{
sscanf(res,"%*s %d %d",&src,&des);
nnn = ;
srcstep = ; desstep = 0;
}
if (cnt == )
{
sscanf(res,"%*s %d %d %d",&src,&des,&nnn);
srcstep = ;
desstep = ;
}
if (cnt == )
{
sscanf(res,"%*s %d %d %d %d",&src,&des,&nnn,&desstep);
srcstep = ;
}
if (cnt == )
{
sscanf(res,"%*s %d %d %d %d %d",&src,&des,&nnn,&desstep,&srcstep);
}
if (op == 'c'){
if (srcstep == && desstep==)nnn=;
for (int i = src , j = des, k = ; k < nnn; i += srcstep,j += desstep,k++)
{
int x = Find(i) , y = Find(j);
p[y] = x;
}
}
else
{
int ansl = ,ansr = ;
for (int i = src , j = des, k = ; k < nnn; i += srcstep,j += desstep,k++)
{
int x = Find(i) , y = Find(j);
if (x != y) ansr++;
else ansl++;
}
printf("%d - %d\n",ansl,ansr);
}
}
return ;
}
最新文章
- Linux VMware 克隆后无法启动eth0网卡
- Orcal函数
- javascript边角知识
- ListCtrl控件着色
- 再谈JSON -json定义及数据类型
- pdo 抽象层连接数据库
- 用javascript做别踩白块游戏1
- oracle学习笔记(二) 基本数据类型
- 记账本-NABCD分析
- 19.3 Table 1-2.S3C2440A 289-Pin FBGA Pin Assignments (Sheet 4 of 9) (Continued)
- 如何用Axure快速制作APP交互原型
- 《Linux内核设计与实现》第一二章笔记
- phpStorm字体大小无法调整, 怎么办?
- Git的使用(一)
- ZZW原创_imdpd导入时产生的错误
- Mybaits代码生成使用
- mysql 类型
- Qt 控制线程的顺序执行(使用QWaitCondition,并且线程类的run函数里记得加exec(),使得线程常驻)
- 2,ThreadGroup 概念以及用法
- 如何创建一个基本JQuery的插件