【问题描述】
对任意给定的m(m∈N+)和n(n∈N+),满足m<n,构造一初始集合:P={x|m≤x≤n,x∈N+}
(m,n≤100)。现定义一种d规则如下:若存在a∈P,且存在K∈N+ ,K>1,使得K´a∈P,则修改P
为:P=P-{y|y=s´a,s∈N+ } ,并称该d规则具有分值a。现要求编制一个程序,对输入的m,n
值,构造相应的初始集合P,对P每应用一次d规则就累加其相应的分值,求能得到最大累加分值的
d规则序列,输出每次使用d规则时的分值和集合p的变化过程。 
【输入格式】
输入仅一行,M,N的值。
【输出格式】
输出每次使用d规则时的分值和集合p的变化过程(即变化后的集合内所有的数,每个数用空格
隔开),注意D后面有个空格,冒号后面有个空格。如果没有一

#include<bits/stdc++.h>
using namespace std;
int n,m,z,ans;
bool a[];
set<int> b[],all;
int l[];
set<int>::iterator it;
void jian(set<int> &a,set<int> &b)
{
set<int> c;
c.clear();
set_intersection(a.begin(),a.end(),b.begin(),b.end(),
insert_iterator<set<int> >(c,c.begin()));
for(it=c.begin();it!=c.end();it++)
{
a.erase(*it);
}c.clear();
}
void print(set<int> a)
{
for(it=a.begin();it!=a.end();it++)
printf("%d ",*it);
}
int check()
{
int minn=,minp=;
for(int i=m;i<=n/;i++)
if(a[i]==&&b[i].size()!=)
{
if(l[i]<=minn)
{
minn=l[i];
minp=i;
}
}
l[]=minp;
return minp;
}
int main()
{
// freopen("set.in","r",stdin);
// freopen("set.out","w",stdout);
scanf("%d%d",&m,&n);
z=n/-m+;
for(int i=m;i<=n;i++) all.insert(i);
for(int i=m;i<=n/;i++)
{
a[i]=;
for(int j=;i*j<=n;j++)
{
b[i].insert(i*j);
}
l[i]=b[i].size();
}
while(check()!=)
{
for(int i=m;i<=n/;i++)
if(a[i]==&&i!=l[])
{
jian(b[i],b[l[]]);
b[i].erase(l[]);
l[i]=b[i].size();
}
jian(all,b[l[]]);
all.erase(l[]);
printf("%d : ",l[]);
print(all);
printf("\n");
b[l[]].clear();
l[l[]]=;
a[l[]]=;
ans+=l[];
}
return ;
}
//10 1 2 1 1 2 3 2 1 1 2

次可以变化就输出0。
【样例输入】
(1)
1 10
(2)
56 57
【样例输出】
(1)
5 : 1 2 3 4 6 7 8 9
4 : 1 2 3 6 7 9
2 : 1 3 7 9
3 : 1 7
1 :
(2)
0

 
 

d-规则的更多相关文章

  1. Yii1.1的验证规则

    在Yii1.1的数据验证是由CValidator完成,在CValidator中提供了各种基本的验证规则 <?php public static $builtInValidators=array( ...

  2. iOS之应用版本号的设置规则

    版本号的格式:v<主版本号>.<副版本号>.<发布号>  版本号的初始值:v1.0.0 管理规则: 主版本号(Major version) 1.  产品的主体构件进 ...

  3. ThinkPhp5.0模型验证规则

    Tp5提供了模型数据规则的验证功能,用于在数据save或者update前验证数据的有效性.Tp5提供校验规则的类为\Think\Validate,默认提供的校验规则可以查看该文件. 在Model文件中 ...

  4. PHP 面向对象编程和设计模式 (5/5) - PHP 命名空间的使用及名称解析规则

    PHP高级程序设计 学习笔记 2014.06.12 命名空间概述 PHP 在 5.3.0 以后的版本开始支持命名空间.什么是命名空间?从广义上来说,命名空间是一种封装事物的方法.在很多地方都可以见到这 ...

  5. "Chinese_PRC_CI_AS" 和 "Chinese_PRC_90_CI_AI" 之间的排序规则冲突问题

    这个错误真是太恶心了.不过有解决办法,你问我哪来的?当然百度的咯! 示例: select a.workTypeDes from A a,B b  where a.workTypeCode=b.work ...

  6. mysql大小写敏感与校对规则

    大家在使用mysql过程中,可能会遇到类似一下的问题: root@chuck 07:42:00>select * from test where c1 like 'ab%';  +-----+  ...

  7. Java 特定规则排序-LeetCode 179 Largest Number

    Given a list of non negative integers, arrange them such that they form the largest number. For exam ...

  8. Scala化规则引擎

    1. 引言 什么是规则引擎 一个业务规则包含一组条件和在此条件下执行的操作,它们表示业务规则应用程序的一段业务逻辑.业务规则通常应该由业务分析人员和策略管理者开发和修改,但有些复杂的业务规则也可以由技 ...

  9. Asp.net 面向接口可扩展框架之业务规则引擎扩展组件

    随着面向接口可扩展框架的继续开发,有些功能开发出现了"瓶颈",有太多的东西要写死才好做.但写死的代码扩展性是非常的不好,迷茫中寻找出入... 进而想到我以前开发的好几个项目,都已有 ...

  10. CSS选择器的权重与优先规则?

    我们做项目的时候,经常遇到样式层叠问题,被其他的样式覆盖,或者写的权重不高没效果,对权重没有具体的分析,做了一个总结. css继承是从一个元素向其后代元素传递属性值所采用的机制.确定应当向一个元素应用 ...

随机推荐

  1. entityframework

    entityframework扩展: http://entityframework-plus.net/

  2. iOS如何彻底避免数组越界

    我们先来看看有可能会出现的数组越界Crash的地方: ? 1 2 3 4 5 6 7 - (void)tableView:(UITableView *)tableView didSelectRowAt ...

  3. [转载]PV操作简单理解

      原文链接:http://blog.csdn.net/liushuijinger/article/details/7586656 进程通常分为就绪.运行和阻塞三个工作状态.三种状态在某些条件下可以转 ...

  4. Android Duplicate files copied in APK

    今天调试 Android 应用遇到这么个问题: Duplicate files copied in APK META-INF/DEPENDENCIES File 1: httpmime-4.3.2.j ...

  5. Mac OS X 中一些常用的命令行技巧

    一.网络设置相关 1.网卡的物理地址的动态重置 出于某些需求,例如网络中的 IP 地址或网络帐号与网卡物理地址绑定,使得多个设备无法切换上网,可尝试临时更改物理地址.不过,系统偏好设置是不能修改网卡物 ...

  6. Nagios安装

    在做安装之前确认要对该机器拥有root权限. 确认你安装好的Fedora系统上已经安装如下软件包再继续: Apache GCC编译器 GD库与开发库 可以用yum命令来安装这些软件包: yum ins ...

  7. 最新版 chrome 33中,backgroundPosition 改了.

    ctrl.css('backgroundPosition' 返回值不一样, 原来是:-75px 0px 现在是:left 75px top 0px // chrome 33 返回的是 left 0px ...

  8. js加载完所有的图片,适合电子相册哦~~~~

    有些时候要一口气加载完所有的图片,所以代码就要这么写.... var imgArray = [ 'http://s16.mogucdn.com/p1/160202/upload_ifqwcmlcmyy ...

  9. Unity3D 响应摇杆

    if (Input.GetKeyUp(KeyCode.Joystick1Button0)) { Debug.Log("Joystick1Button0"); } if (Input ...

  10. android 6.0 高通平台sensor 工作机制及流程(原创)

    最近工作上有碰到sensor的相关问题,正好分析下其流程作个笔记. 这个笔记分三个部分: sensor硬件和驱动的工作机制 sensor 上层app如何使用 从驱动到上层app这中间的流程是如何 Se ...