Codeforces Round #426 (Div. 2)
http://codeforces.com/contest/834
A. The Useless Toy
题意:
<,>,^,v这4个箭头符号,每一个都可以通过其他及其本身逆时针或者顺时针旋转得到。
现在给出起始符号和结束符号,以及旋转的次数,判断是逆时针还是顺时针或者是无法判断。
思路:
可以知道4为一个周期,所以就把次数对4取余数,看一个周期之内的操作就可以了,分别模拟顺时针和逆时针的操作,如果都可以到达或者都不可以到达,那么它们就是不可识别的行为,其它就可以判断顺时针或者逆时针了。
代码:
#include <stdio.h>
#include <string.h> int main()
{
bool f1 = ;
bool f2 = ; int n; char c1,c2; scanf("%c %c",&c1,&c2); scanf("%d",&n); n %= ; char tmp = c1; for (int i = ;i < n;i++)
{
if (tmp == '<') tmp = '^';
else if (tmp == 'v') tmp = '<';
else if (tmp == '>') tmp = 'v';
else if (tmp == '^') tmp = '>';
} if (tmp == c2) f1 = ; tmp = c1; for (int i = ;i < n;i++)
{
//printf("%c\n",tmp);
if (tmp == '<') tmp = 'v';
else if (tmp == 'v') tmp = '>';
else if (tmp == '>') tmp = '^';
else if (tmp == '^') tmp = '<';
} if (tmp == c2) f2 = ; //printf("%d %d",f1,f2); if (f1 && !f2)
printf("cw\n");
else if (!f1 && f2)
printf("ccw\n");
else
printf("undefined\n"); return ;
}
B. The Festive Evening
题意:
一家人要举办宴会。每个客人从他自己特定的门进去,每一道门直到最后一个客人进去之后才会关闭。现在有若干个守卫,他们在每一道门关闭之后才会去守卫另一道门。一个时间单位之内只能按顺序进去一个客人,现在给出客人进门的序列以及守卫的数量,问这个过程中是否有门是无防守的。
思路:
从前往后遍历,记录每一道门第一次出现的位置,然后从后往前遍历,记录每一道门最后一次出现的位置。
之后统计每一时刻有多少道门是开着的,再与守卫的数量进行对比。
代码:
#include <stdio.h>
#include <string.h> struct node
{
int x,y;
}a[]; int b[]; int main()
{
int n,k; scanf("%d%d",&n,&k); char s[]; scanf("%s",s+); for (int i = ;i < ;i++)
{
for (int j = ;j <= n;j++)
{
if (s[j] == 'A' + i)
{
a[i].x = j;
break;
}
}
} for (int i = ;i < ;i++)
{
for (int j = n;j >= ;j--)
{
if (s[j] == 'A' + i)
{
a[i].y = j;
break;
}
}
} for (int i = ;i < ;i++)
{
for (int j = a[i].x;j <= a[i].y;j++)
{
b[j]++;
}
} bool ans = ; for (int i = ;i <= n;i++)
{
if (b[i] > k) ans = ;
//printf("%d ",b[i]);
} if (ans) printf("YES\n");
else printf("NO\n"); return ;
}
C. The Meaningless Game
题意:
两个人玩一个游戏,他们的初始值都为1,每次选一个自然数k(除0),一个人乘以k^2,另一个乘以k,现在给出两个数字a,b,问他们的游戏是否可能达到这个结果。
思路:
看题解补的。首先,如果有可能达到这个结果,那么a*b肯定是一个数的3次方,把a*b开3次方之后,得到的结果必定能整除a,也必定能整除b,而且它的3次方也必定等于a*b。
按照上面3个条件判断就可以了。
代码:
#include <stdio.h>
#include <string.h>
#include <math.h> int main()
{
int n; scanf("%d",&n); while (n--)
{
long long a,b; scanf("%I64d%I64d",&a,&b); long long c = a * b; long long d = round(pow(c*1.0,1.0 / )); if (a % d > || b % d > || d * d * d != c) printf("No\n");
else printf("Yes\n");
} return ;
}
Codeforces Round #426 (Div. 2)的更多相关文章
- CodeForces 834C - The Meaningless Game | Codeforces Round #426 (Div. 2)
/* CodeForces 834C - The Meaningless Game [ 分析,数学 ] | Codeforces Round #426 (Div. 2) 题意: 一对数字 a,b 能不 ...
- Codeforces Round #426 (Div. 2)【A.枚举,B.思维,C,二分+数学】
A. The Useless Toy time limit per test:1 second memory limit per test:256 megabytes input:standard i ...
- Codeforces Round #426 (Div. 2) C. The Meaningless Game
C. The Meaningless Game 题意: 两个人刚刚开始游戏的时候的分数, 都是一分, 然后随机一个人的分数扩大k倍,另一个扩大k的平方倍, 问给你一组最后得分,问能不能通过游戏得到这样 ...
- Codeforces Round #426 (Div. 2)A B C题+赛后小结
最近比赛有点多,可是好像每场比赛都是被虐,单纯磨砺心态的作用.最近讲的内容也有点多,即便是点到为止很浅显的版块,刷了专题之后的状态还是~"咦,能做,可是并没有把握能A啊".每场网络 ...
- Codeforces Round #426 (Div. 2) A,B,C
A. The Useless Toy 题目链接:http://codeforces.com/contest/834/problem/A 思路: 水题 实现代码: #include<bits/st ...
- Codeforces Round #426 (Div. 2)A题&&B题&&C题
A. The Useless Toy:http://codeforces.com/contest/834/problem/A 题目意思:给你两个字符,还有一个n,问你旋转n次以后从字符a变成b,是顺时 ...
- 【Codeforces Round #426 (Div. 2) A】The Useless Toy
[Link]:http://codeforces.com/contest/834/problem/A [Description] [Solution] 开个大小为4的常量字符数组; +n然后余4,-n ...
- 【Codeforces Round #426 (Div. 2) B】The Festive Evening
[Link]:http://codeforces.com/contest/834/problem/B [Description] [Solution] 模拟水题; 注意一个字母单个出现的时候,结束和开 ...
- 【Codeforces Round #426 (Div. 2) C】The Meaningless Game
[Link]:http://codeforces.com/contest/834/problem/C [Description] 有一个两人游戏游戏; 游戏包括多轮,每一轮都有一个数字k,赢的人把自己 ...
随机推荐
- 数据库操作sql
一.把从另外一张表里查到的值插入到前表: 1. 表结构完全一样 insert into 表1 select * from 表2 2. 表结构不一样(这种情况下得指定列名) insert into 表1 ...
- 【Linux】 CentOS7 虚拟机配置
Linux虚拟机配置 从去年开始实习开始,公司电脑换了两个,自己的电脑也换了一个,每换一个新电脑,总免不了要去装一个Linux的虚拟机作为试验用.但是每次新装一个机器总是会遇到各种各样的问题让我用的不 ...
- java中equals相同,hashcode一定相同ma
一.jdk中equals和hashcode的定义和源码进行分析 1.java.lang.Object中对equals()方法的定义 java.lang.Object中对hashCode()方法的定义 ...
- 一、Python安装与Pycharm使用入门
一.安装Python 1.Linux下安装 一般系统默认已安装2.6.6版本,升级成2.7版本, 但 2.6 不能删除,因为系统对它有依赖,epel源里最新的也是2.6版本,所以以源代码的方式安装2. ...
- Sagit.Framework For IOS 开发框架入门教程6:网络请求STHttp
前言: IOS的文章,今天,再来补一篇,Sagit的教程: 虽然感觉IOS的文章没什么观众,还是努力写吧,-_-〜 Sagit 开源地址:https://github.com/cyq1162/Sagi ...
- 如何从零开始学习区块链技术——推荐从以太坊开发DApp开始
很多人迷惑于区块链和以太坊,不知如何学习,本文简单说了一下学习的一些方法和资源. 一. 以太坊和区块链的关系 从区块链历史上来说,先诞生了比特币,当时并没有区块链这个技术和名词,然后业界从比特币中提取 ...
- CSS3动画箭头
<style type="text/css"> .arrow { display: block; width: 20px; height: 20px; position ...
- 2018上C语言程序设计(高级)- 第0次作业成绩
作业链接: https://edu.cnblogs.com/campus/hljkj/CS201702/homework/1617 评分规则 本次作业作为本学期的第一次作业,大家态度较诚恳,篇幅都比较 ...
- java-JProfiler(一)-安装以及简介
一.下载 下载http://www.ej-technologies.com/download/jprofiler/files 目前网上有9.2版本的使用方式,10.暂时还无法完美使用 可以下载zip包 ...
- C语言第一次博客作业---顺序机构基础练习
一.PTA实验作业 题目1.温度转换 本题要求编写程序,计算华氏温度150°F对应的摄氏温度.计算公式:C=5×(F−32)/9,式中:C表示摄氏温度,F表示华氏温度,输出数据要求为整型. 1.实验代 ...