首页 > 其他分享 >递归+pair

递归+pair

时间:2025-01-10 20:44:29浏览次数:1  
标签:cnt return 递归 int sum mid pair const

https://codeforces.com/contest/2053/problem/C

#include<bits/stdc++.h>
#define lc p<<1
#define rc p<<1|1
#define INF 2e9
using namespace std;

#define endl '\n'
using ll = long long;
using pii = pair<ll, int>;
const double PI = acos(-1);
const int N = 2e5 + 10;
const int mod = 1e9 + 7;
int k;
ll sum;
pii fun(int l,int r){
	ll t=(r-l+1);
	if(t>=k){
		ll mid=(l+r)>>1;
		if(t%2){
			
			auto [sum,cnt]=fun(l,mid-1);
			return {sum*2+cnt*mid+mid,2*cnt+1};
			
		}
		else {
			auto [sum,cnt]=fun(l,mid);
			return {sum*2+cnt*mid,2*cnt};
		}
	}
	return {0,0};
}
void solve() {
	int n;cin>>n>>k;
	cout<<fun(1,n).first<<endl;
}

int main() {
	ios::sync_with_stdio(false);
	cin.tie(nullptr), cout.tie(nullptr);
	
	int T = 1;
	cin>>T;
	while (T--) {
		solve();
	}
	
	return 0;
}



标签:cnt,return,递归,int,sum,mid,pair,const
From: https://www.cnblogs.com/laileou/p/18664678

相关文章

  • 用python调用AlistClient 批量递归下载百度网盘指定目录文件,基于Alist
    importosimportrequestsfromalistimportAlistClientfromurllib.parseimportunquote,urlparsedefdownload_file(url,local_path):response=requests.get(url,stream=True)total_size=int(response.headers.get('content-length',0))......
  • ATG32E Modulo Pairing 笔记
    原题链接:洛谷传送门题意简述给定\(2\timesN\)个整数\(a_i\),满足\(0\lea_i<M\)。需要把这些整数分成\(N\)对,每一对\((x,y)\)的权值为\((x+y)\bmodM\)。我们定义,一种分配方案的权值为所有整数对权值中的最大值。求分配方案权值的最小可能值。\(N\le10^5,M\le10^......
  • 递归算法实践--到仓合单助力京东物流提效增收
    作者:京东物流李硕一、背景京东物流到仓业务「对商家」为了减少商家按照京东采购单分货备货过程,对齐行业直接按照流向交接,提升商家满意度;「对京东」揽收操作APP提效;到仓合单功能应运而生;二、问题一次批量采购单(一次50或者100个采购单)需要根据不同的规则合并成多个订单;每一个......
  • wx.makeBluetoothPair
    wx.makeBluetoothPair(Objectobject)基础库2.12.0开始支持,低版本需做兼容处理。以Promise风格调用:支持小程序插件:支持,需要小程序基础库版本不低于2.12.0相关文档:蓝牙介绍功能描述蓝牙配对接口,仅安卓支持。通常情况下(需要指定pin码或者密码时)系统会接管配......
  • wx.isBluetoothDevicePaired
    wx.isBluetoothDevicePaired(Objectobject)基础库2.20.1开始支持,低版本需做兼容处理。以Promise风格调用:支持小程序插件:支持,需要小程序基础库版本不低于2.19.1相关文档:蓝牙介绍功能描述查询蓝牙设备是否配对,仅安卓支持。参数Objectobject属性类型默......
  • 全排列(递归)
    题目链接:https://leetcode.cn/problems/permutations/思路:只用题目给的nums数组进行递归,swap进行交换,注意还原现场classSolution{public:vector<vector<int>>permute(vector<int>&nums){vector<vector<int>>ans;f(nums,an......
  • 代码随想录:二叉树的递归遍历
    代码随想录:二叉树的递归遍历现在是找借口时间,一开始是期末考试太忙了,后来是过年放假,一晃这么久没写题了,这样不好。,看了一下我现在leetcode才40多道题呢定个目标,三月之前刷完代码随想录,并且把hot100的简单中等题都写了。/***Definitionforabinarytreenode.*structTre......
  • 子集(递归)
    题目链接:https://leetcode.cn/problems/subsets-ii/submissions/591733085/题意:给你一个数组,输出不同数字的组合(若两个组合都挑一个1,一个2,无论顺序如何,只输出一个)思路:先排序,将不同数字分组,再讨论每组选0,1,2,...n个的情况classSolution{public:vector<vector<int>>sub......
  • 爬楼梯(动态规划/递归)
    假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例1:输入:n=2输出:2解释:有两种方法可以爬到楼顶。1.1阶+1阶2.2阶示例2:输入:n=3输出:3解释:有三种方法可以爬到楼顶。1.1阶+1阶+......
  • [20250103]使用递归实现distinct功能.txt
    [20250103]使用递归实现distinct功能.txt--//生产系统遇到实际上许多条类似语句,顺便拿其中几个出来,真心不知道开发如何学计算机的。1.问题提出:SYS@127.0.0.1:9106/xtdb/xtdb2>@sql_idc29undaquszs6--SQL_ID=c29undaquszs6comefromsharedpoolselectdistinctritemfrom......