博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
uva-11129-分治
阅读量:5862 次
发布时间:2019-06-19

本文共 1527 字,大约阅读时间需要 5 分钟。

  题意:对于一个0-(N-1)的等差数列,求其中一个排列Q,使得任意0<=i,j,k<n 时,ai,aj,ak不是等差数列.

解法:考虑0-(N-1)这个等差数列,假设公差为K,那么数列如下

A0+0K,A0+1K,A0+2K,A0+3K..........+A0+(N-1)K.

如果我们把A0+OK,A0+2K,A0+4K.......组成一个等差数列Q,这个等差数列的公差为2K.

同理,把A0+1K,A0+3K,A0+5K+........组成一个等差数列R,这个等差数列的公差为2K,让R排在Q的后面.这样,从Q中选取俩个,从R中选取一个组成ai,aj,ak,都不会组成等差数列.

#include 
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
namespace cc{ using std::cout; using std::endl; using std::cin; using std::map; using std::vector; using std::string; using std::sort; using std::priority_queue; using std::greater; using std::vector; using std::swap; using std::stack; using std::bitset; constexpr int N = 10010; int a[N]; int aa[N]; void init(int n) { for (int i = 0;i < n;i++) a[i] = i; } void dfs(int s, int e) { if (s >= e - 2) return; for (int i = s;i < e;i++) { aa[i] = a[i]; } int ss = s; for (int j = s;j < e;j += 2) a[ss++] = aa[j]; int next = ss; for (int j = s + 1;j < e;j += 2) a[ss++] = aa[j]; dfs(s, next); dfs(next, e); } void solve() { int n; while (cin >> n && n) { init(n); dfs(0,n); cout << n << ":"; for (int i = 0;i < n;i++) cout << " " << a[i]; cout << endl; } }};int main(){#ifndef ONLINE_JUDGE freopen("d://1.text", "r", stdin);#endif // !ONLINE_JUDGE cc::solve(); return 0;}

 

posted on
2018-12-16 17:12 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/shuiyonglewodezzzzz/p/10127199.html

你可能感兴趣的文章
我的友情链接
查看>>
hexo博客解决不蒜子统计无法显示问题
查看>>
python实现链表
查看>>
java查找string1和string2是不是含有相同的字母种类和数量(string1是否是string2的重新组合)...
查看>>
Android TabActivity使用方法
查看>>
java ShutdownHook介绍与使用
查看>>
Eclipse的 window-->preferences里面没有Android选项
查看>>
《麦田里的守望者》--[美]杰罗姆·大卫·塞林格
查看>>
[置顶] 深入探析Java线程锁机制
查看>>
遇到的那些坑
查看>>
央行下属的上海资信网络金融征信系统(NFCS)签约机构数量突破800家
查看>>
[转] Lazy evaluation
查看>>
常用查找算法总结
查看>>
grep 零宽断言
查看>>
被神话的大数据——从大数据(big data)到深度数据(deep data)思维转变
查看>>
修改校准申请遇到的问题
查看>>
【DL-CV】浅谈GoogLeNet(咕咕net)
查看>>
python大佬养成计划----win下对数据库的操作
查看>>
(cons '(〇 . 前言) 《为自己写本-Guile-书》)
查看>>
监控软件zabbix之安装
查看>>