首页 > 其他分享 >题解 ARC115C【ℕ Coloring】

题解 ARC115C【ℕ Coloring】

时间:2023-01-19 23:33:32浏览次数:33  
标签:lfloor Coloring log int 题解 ARC115C rfloor define

显然 \(A_1,A_2,A_4,A_8,\cdots\) 必须互不相同,因此最大的数一定不小于 \(\lfloor\log_2n\rfloor+1\),猜想可以取到 \(\lfloor\log_2n\rfloor+1\)。

构造 \(A_i=\lfloor\log_2i\rfloor+1\),则对于任意 \(A_i=A_j\) 都有 \(2i > j\),不存在倍数关系。

时间复杂度 \(\Theta(n)\)。

// Problem: C - ℕ Coloring
// Contest: AtCoder - AtCoder Regular Contest 115
// URL: https://atcoder.jp/contests/arc115/tasks/arc115_c
// Memory Limit: 1024 MB
// Time Limit: 2000 ms
// 
// Powered by CP Editor (https://cpeditor.org)

//By: OIer rui_er
#include <bits/stdc++.h>
#define rep(x,y,z) for(int x=(y);x<=(z);x++)
#define per(x,y,z) for(int x=(y);x>=(z);x--)
#define debug(format...) fprintf(stderr, format)
#define fileIO(s) do{freopen(s".in","r",stdin);freopen(s".out","w",stdout);}while(false)
using namespace std;
typedef long long ll;

template<typename T> void chkmin(T& x, T y) {if(x > y) x = y;}
template<typename T> void chkmax(T& x, T y) {if(x < y) x = y;}

int main() {
	int n;
	scanf("%d", &n);
	for(int L = 1, R, u = 1; L <= n; L = R + 1, u++) {
		R = 2 * L - 1;
		chkmin(R, n);
		rep(i, L, R) printf("%d%c", u, " \n"[i==n]);
	}
	return 0;
}

标签:lfloor,Coloring,log,int,题解,ARC115C,rfloor,define
From: https://www.cnblogs.com/ruierqwq/p/arc115c.html

相关文章

  • 2023牛客寒假算法基础集训营2题解
    写在前面菜菜,哭哭,大佬救救QaQ理解大佬的代码并且整理成一篇博客真的很累...C:Tokitsukazeanda+b=n(hard)1.本蒟蒻的代码个人感觉用前缀和更方便。我最开始用的是线......
  • CF622F The Sum of the k-th Powers 题解
    观前提示本题解仅提供一个理论复杂度正确的解法,因为本题模数为\(10^9+7\),没有优秀\(\text{MTT}\)板子的我被卡常了。正文部分不妨设\(S_{n,m}=\sum_{i=0}^{n-1}i^m......
  • CF576C 题解
    注意到\(\sum\limits_{i=2}^N|x_{p_i}-x_{p_{i-1}}|+|y_{p_i}-y_{p_{i-1}}|\)。本质上是两个点之间的曼哈顿距离。而曼哈顿最小距离生成树要\(O(n^2\logn)\)......
  • CF1768B 题解
    首先我们思考什么数是不用排序的。显然,序列中一个由\(1\)开始,每次递增\(1\)的子序列是不用排序的。为什么呢?因为我们把其他数按从大到小排好后这个子序列刚好构成排......
  • 洛谷P4983 忘情 题解报告
    题目地址题意:把正整数序列分隔为m个区间,若单个区间的元素之和为X,则其贡献为\((X+1)^2\)。求所有区间的贡献之和的最小值。分析:wqs二分+斜率优化dp。用单调队列发可......
  • abc273G题解
    \(dp[i][j]\):考虑到前i行,有j个2的方案数。设有k个1(计算可得)。\(a_{i+1}=0\):\(dp[i][j]\todp[i+1][j]\)\(a_{i+1}=1\):\(dp[i][j]\times(n-j-k)\todp[......
  • win10下python3.9的代理报错问题解决(附web3的polygon爬虫源码)
    背景因为工作中经常需要代理访问,而开了代理,request就会报错SSLError,如下:requests.exceptions.SSLError:HTTPSConnectionPool(host='test-admin.xxx.cn',port=443):Ma......
  • C# 使用SQLDMO备份数据库时不显示进度的问题解决方法
    在使用SQLDMO备份数据库的过程中,参考了网上的例子,但是进度条却不显示,每次返回的都是0,解决方法是使用全局变量,每次做个累加就可以了。stringServerName="";......
  • Nextcloud安装扩展记录以及问题解决方法
    1、Nextcloud支持显示视频缩略图-23-01-19安装yasm(http://www.tortall.net/projects/yasm/releases/)wgethttp://www.tortall.net/projects/yasm/releases/yasm-1.3.0.......
  • Loj 507 接竹竿 题解
    Loj链接:接竹竿${\scr\color{SkyBlue}{\text{Solution}}}$题目大意:给定一个数组,每次加入一种颜色的数,可以取走与它颜色相同的两个数之间的所有数,问最后取走的所有数......