求和比较

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

小蓝在学习C++数组时,突发奇想想知道如果将一个连续的正整数数组拆分成两个子数组,然后对拆分出的两个子数组求和并做差,且差值正好等于一个固定的正整数,像这样同一连续的正整数数组拆分方案有多少种。

我们一起帮助小蓝设计一下规则:

  第一给出两个正整数N和M;

  第二从1到N组成一个连续正整数数组A(A={1,2,3,4……N});

  第三将数组A拆分成两个子数组A1、A2
  (1.两个子数组中不能出现相同的数;
   2.子数组中的数字可以是连续的也可以是不连续的;
   3.拆分出的两组子数组的元素个数可以不同,但总数量等于A数组元素个数);

  第四对A1、A2两个子数组分别求和;

  第五对A1、A2两个子数组的和做差(大的数字减去小的数字);

  第六如果差值正好等于固定值M,则判定此拆分方案成立。

如:N=5,M=1,连续正整数数组A={1, 2, 3, 4, 5}。

符合条件的拆分方案有3种:

  A1={1, 2, 4}, A2={3, 5}, 其中A1的和为7,A2的和为8,和的差值等于1

  A1={1, 3, 4}, A2={2, 5}, 其中A1的和为8,A2的和为7,和的差值等于1

  A1={3, 4}, A2={1, 2, 5}, 其中A1的和为7,A2的和为8,和的差值等于1

输入格式

输入两个正整数N和M(3<N<30,0<=M<=500)

输出格式

输出拆分方案数。

5 1
3

蓝桥杯省赛历年真题

已参加
状态
已结束 (已参加)
规则
IOI
题目
22
开始于
2024-8-2 19:55
结束于
2024-4-9 23:30
持续时间
200 小时
主持人
参赛人数
1213