- 博客(19)
- 收藏
- 关注
原创 HRBU20211110训练
B - Decimal题目:给定一个正整数n,判断1/n是不是是以十进制为基数的无限小数,如果是输出“Yes”,如果不是输出“No”。思路:n的范围最大为100,那么我们只要判断n能否整除100就可以了,而1到100之间能被100整除的除了1其它的数都包含两个因子2和5,所以我们只要判断n的质因子是不是只有2和5就可以了。AC代码:#include<bits/stdc++.h>using namespace std;int main(){ int t;
2021-11-11 20:58:51 261
原创 HRBU20211108训练
C - String题目:给定一个字符串序列,我们可以从中随机选择四个字符(允许选择相同的字符),求您四个字符按(avin)顺序排列的概率。思路:计算字符'a','v','i','n'出现的次数,当它们都出现过的时候我们可以求出按照(avin)顺序排列的概率,之后再用它们的最大公约数进行约分就可以了。AC代码:#include<bits/stdc++.h>using namespace std;int main(){ int n; while(ci
2021-11-09 21:54:02 173
原创 Codeforces Round #575 (Div. 3)
A - Three Piles of Candies题目:我们有三堆糖果,现在要将它们分为数量相等且数量尽可能多的两堆糖果。思路:直接将三堆糖果加在一起平分就可以了,糖果总数量无论是奇数还是偶数整除后向下取整就是我们想要的答案了。AC代码:#include<bits/stdc++.h>using namespace std;int main(){ int q; cin>>q; while(q--) { l
2021-11-06 20:30:49 106
原创 Codeforces Round #753 (Div. 3)
A - Linear Keyboard题目:我们将26个字母按照一定的顺序排列,现在输入一个单词s,在录入一个单词时我们需要逐个连续键入其所有字母,在两个键之间移动手所需的时间等于这些键位置差的绝对值,求确定输入单词s需要多长时间。思路:首先记录字母顺序,之后将单词s的每个字符的字母顺序对应的位置做差,记录他们的绝对值就可以了。AC代码:#include<bits/stdc++.h>using namespace std;int a[30];int main()
2021-11-04 20:59:06 103
原创 Codeforces Round #752 (Div. 2)(A题~D题)
A - Era题意:给定一个序列a,我们有一种操作可以选择任意一个正整数将其插入序列中,求最终使序列满足条件1<i<|a|,ai<=i的最少操作次数。思路:我们要满足1<i<|a|,ai<=i,那么最少要让a[i]==i,这是最少的操作步骤。AC代码:#include<bits/stdc++.h>using namespace std;int a[105];int main(){ int t; cin>&
2021-11-02 20:29:49 277 3
原创 Codeforces Round #751 (Div. 2)(A题~B题)
A - Two Subsequences题意:给您一个字符串s。您需要找到两个非空字符串a和b,以满足以下条件:字符串a和b都是s的子序列。对于每个索引 i,字符串s的字符si必须恰好属于字符串a或b中的一个。字符串a是词典编纂的最小可能值,字符串b可以是任何可能的字符串。求满足条件的任意一种字符串a和b。思路:我们知道字符串a和b都是非空的,而且字符串a是词典编纂的最小可能值,字符串b可以是任何可能的字符串,并且我们只要求出任意一种解就可以了,这样最简单的方法就是我们让字符
2021-10-30 20:46:08 199
原创 Codeforces Round #750 (Div. 2)(A题~D题)
A. Luntik and Concerts思路:a=1,b=2,c=3 我们将a,b,c都减去b(-1,0,1),我们求的是音乐会的时间差,那它们的运算还是不受影响的,我们设两场演唱会为x=0,y=0,将a安排到x,那么x=-1,y=0,这时x和y的差值为1,也就是相当于x=0,y=1,另外x=0,y=0,将c安排到y,那么x=0,y=1,这时x和y的差值为1,也就是相当于x=-1,y=0,也就是说音乐会持续时间之差与a歌和c歌的数量有关,我们将a放到x音乐会的时间差相当于将a放到y,将c放到y音
2021-10-28 19:44:48 353 1
原创 HRBU20211025训练
A - Elections题意:三名候选人参加的选举最近结束。第一名候选人获得a票,第二名候选人获得b票,第三名候选人获得c票。对于每个候选人,解决以下问题:该候选人应获得多少选票才能赢得选举(即该候选人的票数严格大于任何其他候选人的票数)?思路:判断该候选人的票数是否严格多余其他候选人的票数,只要该候选人的票数比其他候选人的票数多一票就可以了,我们要做的就是分别处理候选人票数数量的种情况:1.票数全部相同;2.票数全部不同;3.两个候选人的票数相同。AC代码:#include&l
2021-10-26 20:35:17 439 4
原创 HRBU20211013训练
A - Drinks Choosing题意:给定学生数量n和饮料种类k,有n行输入,每行输入学生想要的饮料种类,所有分配的饮料都是一对相同类型的饮料,如果要满足三个想要种类1饮料的学生,那么就需要两组种类1饮料,一共有n/2组饮料,求可以得到自己想要的饮料的学生的数量。思路:首先将需要饮料种类数量为偶数的学生满足,这样可以将每组分配的饮料全部使用,没有浪费,然后将剩余的需要饮料种类数量为奇数的学生依次满足,直到将饮料用完为止。#include<bits/stdc++.h>
2021-10-24 20:13:23 1566
原创 HRBU20211011训练
A - Consecutive Sum Riddle题意:给定一个数n,求得l到r区间内所有数的和为n。思路:我们可以知道-(n-1)到n区间内所有数的和一定等于n,比如当n=6时(-5)+(-4)+(-3)+(-2)+(-1)+0+1+2+3+4+5+6=6,所以当l=n-1,r=n时就是答案的一种。#include<bits/stdc++.h>using namespace std;int main(){ int t; scanf("%d",&am
2021-10-12 19:27:25 174
原创 HRBU20211008训练
A - Keanu Reeves题意:给定一个只包含0和1的字符串,判断字符串中0和1的数量是否相同,若不相同输出1然后将字符串输出,若相同则输出2然后将字符串分成两部分输出并且保证两部分字符串中0和1的数量不同。思路:首先统计字符串中0和1的数量,判断0和1的数量是否相同,若不相同输出1然后将字符串输出,若相同只需要将第一个字符或最后一个字符单独输出就可以满足条件了。#include<bits/stdc++.h>using namespace std;int main
2021-10-09 19:21:39 220
原创 HRBU20211006训练
A - Nearest Interesting Number题意:给定一个数a,求大于等于a并且数字的总和可以被4整除的数n,n要尽可能的小。思路:直接从a开始暴力求解就可以了。#include<bits/stdc++.h>using namespace std;int main(){ int a,n,ans; cin>>a; for(int i=a;;i++) { n=i; ans=0;
2021-10-07 18:01:57 145
原创 HRBU20211001训练
A - CQXYM Count Permutations题意:给定一个2n的数组,给出一个置换操作,置换是由n个从1到n的不同整数按任意顺序组成的数组,求满足pi<pi+1的i的数目不小于n的置换数。思路:我们要求得是满足n个置换数得答案,我们可以发现满足条件置换数的数量和不满足条件置换数的数量是对等的,所以我们将数组全排列后除2就可以了。#include<iostream>#include<cstdio>using namespace std;co
2021-10-06 12:01:43 112
原创 HRBU20211004训练
A - Gamer Hemose题意:在Valorant有一个特工,他有n件武器。第i种武器的伤害值为ai,特工将面对一个生命值为H的敌人。特工可以执行一个或多个移动,直到敌人死亡。在一次移动中,他将选择一件武器并降低敌人的生命值。当敌人的生命值小于或等于0时,敌人将死亡。然而,并不是每件事都那么容易:特工不能连续两次选择同一件武器。特工使用武器杀死敌人的最小次数是多少?思路:考虑到有t组数据(1<=t<=10^5),每组数据有n个数据(2<=n<=10^
2021-10-04 20:01:09 234 2
原创 HRBU20211003周赛
A - Seismic magnitude scales题意:地震的震级是地震释放能量的对数尺度。我们知道,每次震级增加1,能量量大约乘以32。这里,我们假设每次震级增加1,能量量正好乘以32。在这种情况下,a级地震的能量是B级地震能量的多少倍?思路:输出pow(32,A-B),注意数据范围要用long long。#include<iostream>#include<cmath>using namespace std;int main(){ in
2021-10-04 19:43:44 81
原创 HRBU_20210929训练
A - Casimir's String Solitaire题意:给定一个字符串s,其中包含ABC三种字符,下面给出两种操作:1.消除任意位置的A和B,位置不分前后;2.消除任意位置得B和C,位置不分前后。求这个字符串能否全部被消除。思路:每一次消除都包含B,但A和C是可以随意选择得,也就是说只要满足A+C==B就可以将字符串完全消除。#include<iostream>using namespace std;int main(){ int..
2021-10-03 19:19:33 180
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人