ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

luogu P2609 [ZJOI2012]数列

2021-01-23 19:32:58  阅读:225  来源: 互联网

标签:luogu while ZJOI2012 高精 分支 P2609 2i Tlog 2k


题面传送门
发现这道题主要不是思维难,而是高精难打。还难卡常
\(2i\)的显然很好处理,考虑\(2i+1\)怎么做
首先设两个分支为\(2k-1,2k\),那么会衍生出三个分支\(k-1,k,k\)容易发现仍然只有两个本质不同。
那么只要暴力递归下去判个重即可。
但是问题是这样\(O(Tlog^3n)\)过不去。
考虑化简一下不用map,直接递推即可。时间复杂度\(O(Tlog^2n)\)
高精要压位才能过去。
代码实现:

//高精就不贴了
int main() {
	freopen("1.in","r",stdin);
	scanf("%d",&t);
	while(t--){
		cin>>a;r=e;l=d;
		while(a!=0){
			//cout<<a<<endl;
			if(a%c==d) r+=l;
			else l+=r;
			a/=c;
		}
		cout<<r<<endl;
	}
}

标签:luogu,while,ZJOI2012,高精,分支,P2609,2i,Tlog,2k
来源: https://www.cnblogs.com/275307894a/p/14318672.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有