寻找最小字典序排列以最小化绝对差之和
给定一个包含n个正整数a1,…,an的数组,以及一个可能为负数的整数c。\n\n在数组a1,…,an的所有排列b1,…,bn中,考虑∑i=1n−1|bi+1−bi−c|的最小可能值。\n找到数组a的字典序最小的排列b,以实现这个最小值。\n\n如果以下情况之一成立,则序列x在字典序上小于序列y:\n\nx是y的前缀,但x≠y;\n在x和y第一个不同的位置上,序列x的元素比y中对应位置的元素小。\n\n输入\n每个测试包含多个测试用例。第一行包含测试用例的数量t(1≤t≤104)。下面是每个测试用例的描述。\n\n每个测试用例的第一行包含两个整数n和c(1≤n≤2⋅105,−109≤c≤109)。\n\n每个测试用例的第二行包含n个整数a1,…,an(1≤ai≤109)。\n\n保证所有测试用例中n的总和不超过2⋅105。\n\n输出\n对于每个测试用例,输出n个整数b1,…,bn,即实现最小值∑i=1n−1|bi+1−bi−c|的a的字典序最小的排列。
原文地址: https://www.cveoy.top/t/topic/pHE7 著作权归作者所有。请勿转载和采集!