那年一个菊苣问了asuka几个问题,把asuka花式吊打。
asuka思考了一下,不能光我一个人被吊打啊,于是他决定把这个题出出来。
如果一个数字中含有4或者7,那么这个数字就是不好看的,因为4明显不ok,而7的横折的弧度不太符合黄金分割,当然这个理由是我瞎编的。
那么问题来了,第n个好看的数字是多少呢?
Input
第一行一个t t<=10000 代表数据组数
每组的第一行一个n 1<=n<=1e9意义如题面。
Output
对于每一组输出一个x代表第n个好看的数字
Sample Input
2
1
7
Sample Output
1
9
思维题,就当作是八进制来看就行
AC代码:
#include
#include
#include
#include
#include
#include
一开始,一个人的算法实力是1,当他学会了一个难度值为x的算法的时候,因为两个算法是会产生灵感的,他的实力将变成之前的x倍。
现在alaikesitasa的算法实力是n,他说自己一直都在学同一种难度的算法并且学会了两个或更多,他说的是不是有可能是真的呢?
一个人学完算法之后实力一定会上升。
Input
第一行一个t t<=100代表数据组数
每一组一个n n<=1000000000 代表alaikesitasa的算法实力。
Output
对于每一组输出一个yes或者no代表alaikesitasa说的有没有可能是真的
Sample Input
3
2
3
4
Sample Output
no
no
yes
题目不难理解,就是判断一个数字能否开平方或者n次方,n可以取(2-30),最多30次方
这个其实也好办,就是将这个数先开n次方根再进行乘n次,判断前后是否一致即可
注意精度问题就好
AC代码:
#include
#include
#include
#include
#include
#include
研究证明,汉的字阅读序顺是不会影响你明白这句话的意思的。
但是如果顺序差的太多也是会影响的,比如汉阅读顺的序字你就看不懂什么意思了。
那么多少算多呢?科学家芦苇给出证明,当两个字符串中,如果A中的每一个字符的位置和在B中的同样的字符的位置的距离绝对值小于m,并且一一对应,那么就不会影响到阅读顺序。
也就是说如果把B重排可以得到A,那么B中的每一个字符的位置离A中的对应位置应小于等于m。
对于每一组字符串,判断B字符串还能不能读出A的意思。
Input
第一行一个t t<=7 代表数据组数
对于每一组,第一行一个m,意义如题意。 m <= 100
第二行一个字符串A len(A) <= 100000。
第二行一个字符串B len(A) == len(B)。
字符串都是英文小写字母。
Output
对于每一组输出一行yes或no代表B能不能读出A的意思。
Sample Input
2
0
ab
ba
1
ab
ba
Sample Output
no
yes
题目大意就不说了,一看就懂
直接进行模拟一下就好了
AC代码:
#include
#include
#include
#include
#include
#include
现在有一块n*m的矩形,上面每一格都有一个小写字母。
如果一个子矩阵的四个角上的小写字母都是一样的,那么就可以摆一个魔法阵出来。
那么可以摆多少个魔法阵呢?
Input
第一行一个t t<=100 代表数据组数
每一组的第一行有两个数字n和m n,m<=100 代表矩形的行和列。
接下来的n行每行有一个长m的字符串,它们代表这个矩形
Output
对于每一组输出一个值代表可以构成的魔法阵的个数。
Sample Input
1
2 2
aa
aa
Sample Output
1
题目意思就是求四个角都是一样的字符的个数,直接暴力
AC代码:
#include
#include
#include
#include
#include
#include
Input
The first line is an integer t(1≤t≤100), which is the number of test cases.
Then t lines follow. Each line contains two numbers n and d.
Output
T lines, which are the answers.
Sample Output
3
2 3
3 2
4 1
Sample Output
9
14
10
直接快速幂即可
AC代码:
#include
#include
#include
#include
#include
#include
小C是一个可爱的女孩,她特别喜欢世界上最稳定的图形:三角形。有一天她得到了n根木棍,她把这些木棍随意的摆放成一行。小K来和小C玩,他发现了这排木棍,突然想知道在一段区间[l,r]之间的木棍(即第L根到第R根木棍)是否可以组成一个三角形,小C表示她不会,所以请你帮忙。
Input
数据只有一组。
第一行只有一个数字N,代表一共有N根木棍,N<=100000。
第二行为N个数,代表每根木棍的长度。每根木棍的大小不超过1e18。
第三行为一个数字Q,代表询问数目,Q<=100000。
接下来的Q行,每一行有两个数字L和R,代表询问的区间。其中L和R满足1<=L<=R<=N。
Output
对于每个询问,如果可以组成三角形输出”Yes”,否则输出”No”(不需要加引号)。
Sample Input
5
3 1 2 4 5
2
1 3
1 5
Sample Output
No
Yes
就是给你一组数据,再给你一个范围,求这个范围中的数据能否构成三角形
其实范围大到一定程度就一定能构成三角形了,总所周知斐波拉契的数肯定是不能组成三角形的
而且斐波拉契数到第100多项的时候就已经超过10^18了,所以超过150都是yes,否则暴力就好了
AC代码:
#include
#include
#include
#include
#include
#include
小H是一个可爱的女孩,她特别喜欢看推特(tweeter)。有一天她得到了某位用户的一些推特消息,想从中提取出这个用户在这些消息中@了哪些人。但是这些消息太长了,她想请你来帮她完成这个任务。
每条消息中只会包含ASCII编码中的可见字符与空格。
推特中用户名的定义为一个长度大于0的字符串,且字符串中只包括数字0-9,英文字符a-z与A-Z,’-’与’_’。用户名区分大小写。
对@一个人的判定方式为:在消息中出现了”@username”,其中username为一个用户名,且为’@’后面所能匹配到最长的用户名。如”@TOM”,只能得到用户名TOM而不能得到用户名TO。同时’@’前面不能是一个合法的用户名字符,我们以此排除所有的邮箱信息。如”[email protected]”我们不会提取出用户名,但”[email protected]”我们要从中提取出”qq”。
Input
输入数据第一行为T,代表数据组数。(T<=5)
对于每组数据,第一行为n,代表推特消息数。接下来的n行中,每一行有一条长度小于140的推特消息。(n<=5)
Output
对于每组数据,第一行为k,代表n条消息中共@了多少个人(若同一个人被@了不止一次,则我们只记录一次)。接下来的k行中,每一行输出一个被@的用户名,k个用户名按照字典序排序。
Sample Input
2
5
@all, wish you have a nice contest~~~
Good Luck with you, @Contestant, @HUST!
Have Fun! :-) @All
Competition Topics By @HIT-CCPC
All Copyright Reserved @CCPC2018, @HIT-CCPC
4
HIT@CCPC
@HUST
@HIT-CCPC
@CCPC2018
Sample Output
6
All
CCPC2018
Contestant
HIT-CCPC
HUST
all
3
CCPC2018
HIT-CCPC
HUST
直接模拟即可,注意细节问题就好了
AC代码:
#include
#include
#include
#include
#include
#include