AtCoder abc336 A~D题解

这篇具有很好参考价值的文章主要介绍了AtCoder abc336 A~D题解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

A.

题目翻译:

对于正整数 X X X 级别的龙串, X X X 是长度为 ( X + 3 ) (X+3) (X+3) 的字符串,由按此顺序排列的 ong 的一次L X X X次出现形成。

你得到一个正整数 N N N。打印 N N N 级的龙串。

分析

按题目要求做即可……,输出一个 L,循环 X X X 次输出 o,再输出 ng文章来源地址https://www.toymoban.com/news/detail-791973.html

B.

题目翻译:

对于正整数 X X X c t z ( X ) ctz(X) ctz(X) X X X 的二进制符号末尾连续零的(最大)个数。

给你一个正整数 N N N. 打印 c t z ( N ) ctz(N) ctz(N)

分析

C++有一个函数叫 __builtin_ctz(X) 其中 X X X 为参数,可以帮你求出 X X X 二进制下末尾连续零的个数,或者算一个 lowbit 再输出 log ⁡ 2 ( l o w b i t ) \log_2(lowbit) log2(lowbit) 即可。

代码

#include <bits/stdc++.h>
#define debug puts("Y")

using namespace std;

int main(){
	int n;
	cin >> n;
	int lowbit = n & -n;
	cout << log2(lowbit);
	return 0;
}

C.

题目翻译:

一个非负整数 n n n 满足以下条件时称为好整数:

在十进制符号中 n n n 都是偶数 ( 0 , 2 , 4 , 6 , 8 ) ( 0, 2, 4, 6,8) (0,2,4,6,8). 例如 0 , 68 0, 68 0,68 2024 2024 2024 都是不错的整数。

给你一个整数 N N N. 求第个 N N N 好整数。

分析

看成 5 5 5 进制,由于 0 0 0 也算好整数所以将 n − 1 n-1 n1 转化为 5 5 5 进制,在跟 0 , 2 , 4 , 6 , 8 0,2,4,6,8 0,2,4,6,8 一一对应即可。

代码

#include <bits/stdc++.h>
#define int long long 

using namespace std;

int n; 
string t = "02468", ans; 
stack <char> stk;

signed main(){
	cin >> n;
	if(n == 1){
		cout << "0";
		return 0;
	}
	n --;
	while(n != 0){
		stk.push(t[n % 5]);
		n /= 5; 
	}	
	while(!stk.empty()){
		cout << stk.top();
		stk.pop(); 
	}
} 

D.

A.

题目翻译:

对于正整数 X X X 级别的龙串, X X X 是长度为 ( X + 3 ) (X+3) (X+3) 的字符串,由按此顺序排列的 ong 的一次L X X X次出现形成。

你得到一个正整数 N N N。打印 N N N 级的龙串。

分析

按题目要求做即可……,输出一个 L,循环 X X X 次输出 o,再输出 ng

到了这里,关于AtCoder abc336 A~D题解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • AtCoder Beginner Contest 336

    给定一个数 (n) ,将 long 中的 o 重复 (n) 次后输出。 模拟即可。 神奇的代码 给定一个数 (n) ,问 (n) 的二进制表示下的末尾零的数量。 即找到最小的 (i) 使得 (n (1 i)) 不为零的位置。枚举即可。 或者直接用内置函数 __builtin_ctz 。(count tail zero? 神奇的代码 定义一个数

    2024年01月20日
    浏览(41)
  • AtCoder Beginner Contest 336 E - Digit Sum Divisible

    E - Digit Sum Divisible 题意 定义一个正整数 x x x 为 g o o d good g oo d 当且仅当: x x x 能被它的数位和 整除 统计小于等于 N N N 的 g o o d good g oo d 正整数数量 思路 这道题关键是要观察到在 N ≤ 1 0 14 N leq 10^{14} N ≤ 1 0 14 的限制下,数位和种类是有限的:最多只有 9 × log ⁡ 10 1 0 1

    2024年01月25日
    浏览(41)
  • AtCoder Beginner Contest 321(ABC321)

    直接模拟。 直接暴力枚举 ([0sim100]) ,每次把第 (n) 个数当作当前枚举的 (i) ,然后看看条件是否满足。 给你一个 (K) ,求出 ([1 sim K]) 区间内有多少个 321-like Number 。 321-like Number 的定义: 每一位上的数字从左到右严格单调递减。 或者说,若它有 (d) 位,对于 (for

    2024年02月08日
    浏览(33)
  • Atcoder ABC340 C - Divide and Divide

    时间限制:2s 内存限制:1024MB 所有图片源自Atcoder,题目译文源自脚本Atcoder Better! 点击此处跳转至原题 【样例输入1】 【样例输出1】 【样例说明1】 【样例输入2】 【样例输出2】 【样例输入3】 【样例输出3】 老汉使用到的是记忆递归的解题方式 本题是求将 n 分解至 n 个 1

    2024年02月20日
    浏览(36)
  • AtCoder Beginner Contest 292 (A - E) 记录第一场ABC

    本来晚上在打Acwing周赛,最后一题Trie想不出来咋写,看群里有人说ABC要开始了,想着没打过ABC就去报了一下,感觉难度大概是cf的Div3到Div4之间吧,总共写了五个题,E题想复杂了快结束才交过。总的来说手速很重要。 题意:给一个字符串,要求把小写字母改成大写。 分析:

    2023年04月19日
    浏览(32)
  • abc343G 题解

    给你 (N) 个由小写字母组成的字符串 (S_1, S_2, ldots, S_N) ,找出一个母串使得它包含所有这些字符串作为它的子串,最小化该母串的长度并输出。 (1 leq N leq 20) , (sum |S_i| leq 2 times 10 ^ 5) (没错洛谷翻译就是我写的) 首先如果有一个字符串被另一个字符串完全包括,那

    2024年03月09日
    浏览(90)
  • [ABC318E] Sandwiches 题解

       给定包含 (n) 个整数的序列 (a) ,其中任意元素的值 (a_i in [1,n]) ,统计包含三个元素的满足以下条件有序三元组数量:满足下标严格递增;满足第一个和最后一个元素相等,而中间的元素和两端的元素不相等。    记录三元组 ((a_i,a_j,a_k)) ,即 (1 le i j k le n ,

    2024年02月10日
    浏览(44)
  • ABC330 A-E 题解

    枚举一遍,当前数大于 (L) 使 (ans+1) 即可. 枚举一遍,当前数在 (L,R) 之间,结果就是它本身,小于 (L) 为 (L) ,大于 (R) 为 (R) . 枚举 (i:0simsqrt{d}) 为第一个数,以 (1) 为左边界, (sqrt{d-i^2}+1) 为右边界,判定条件为 (mid^{2}) 与 (d-i^2) 之间的大小关系,每次更新边界后 (ans=

    2024年02月05日
    浏览(44)
  • ABC341A-D题解

    这个没什么好说的,就先输出一个 1 ,再输出 n n n 个 01 就大功告成了。 要获取更多 x x x 国货币,只能用 x − 1 x - 1 x − 1 国货币换。 所以我们可以从 1 1 1 国一直换到 n n n 国,输出,结束。 你会发现, 50 0 3 2 ⋅ 1 0 8 500^32cdot10^8 50 0 3 2 ⋅ 1 0 8 ,所以可以暴力枚举高桥所在

    2024年02月19日
    浏览(33)
  • [ABC319E] Bus Stops 题解

      给定 (n) 个公交站。对于第 (i) 个公交站,在时刻 (p_i times k,k in mathbb{N}) 有一辆公交车出发,在经过 (t_i) 的时间后,到达第 (i+1) 个公交站。   在走到第一个公交车之前需要走 (X) 时刻,做到最后一个公交站之后下车以后还需要走 (Y) 时刻。   约束: (1

    2024年02月09日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包