http://poj.org/problem?id=1416

题意:将一个数分成几部分,使其分割的各个数的和最大并且小于所给的数。

凌乱了。。参考的会神的代码。。orz...

 #include <stdio.h>
#include <string.h> int arr[],ans[];
int max,len,f;
int a,b; void dfs(int n,int now,int sum,int k,int t)
{
int m = n % ;
if (!n)
{
arr[k] = now;
if (sum + now > a)
return ;
if (sum + now ==max)
f++;
if (sum +now > max)
{
max = sum + now;
f = ;
len = k;
for (int i = ; i <= k; i ++)
{
ans[i] = arr[i];
} }
return ;
}
dfs(n/,now+t*m,sum,k,t*);
arr[k] = now;
dfs(n/,m,sum+now,k+,);
}
int main()
{
while(~scanf("%d%d",&a,&b)&&a&&b)
{
max = ;
f = ;
dfs(b/,b%,,,);
if (max==)
{
printf("error\n");
continue;
}
if (f > )
{
printf("rejected\n");
continue;
}
printf("%d",max);
for (int i = len; i >= ; i --)
{
printf(" %d",ans[i]);
}
printf("\n");
}
return ;
}

Shredding Company(dfs)的更多相关文章

  1. POJ1416——Shredding Company(DFS)

    Shredding Company DescriptionYou have just been put in charge of developing a new shredder for the S ...

  2. poj 1416 Shredding Company( dfs )

    我的dfs真的好虚啊……,又是看的别人的博客做的 题目== 题目:http://poj.org/problem?id=1416 题意:给你两个数n,m;n表示最大数,m则是需要切割的数. 切割m,使得 ...

  3. POJ1416 Shredding Company(dfs)

    题目链接. 分析: 这题从早上调到现在.也不算太麻烦,细节吧. 每个数字都只有两种状态,加入前一序列和不加入前一序列.DFS枚举. #include <iostream> #include ...

  4. Shredding Company(dfs)

    Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 3519   Accepted: 2009 Description You h ...

  5. POJ 1416 Shredding Company【dfs入门】

    题目传送门:http://poj.org/problem?id=1416 Shredding Company Time Limit: 1000MS   Memory Limit: 10000K Tot ...

  6. Shredding Company (hdu 1539 dfs)

    Shredding Company Time Limit: 5000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others ...

  7. POJ 1416 Shredding Company 回溯搜索 DFS

    Shredding Company Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 6173   Accepted: 3361 ...

  8. poj1416 Shredding Company

    Shredding Company Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 5379   Accepted: 3023 ...

  9. 搜索+剪枝 POJ 1416 Shredding Company

    POJ 1416 Shredding Company Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 5231   Accep ...

随机推荐

  1. Sybase_ASA 字符串拼接

    列转行并拼接字符串,使用LIST函数 SELECT LIST(T.NAME,',') FROM TAB_DEMO T;

  2. jquery from使用

    jquery form是一个基于jquery的表单异步提交的插件,通过它能快速简便的提交表单. html <div> <form id="ajaxForm" me ...

  3. Linux如何查看端口(转)

    Linux如何查看端口 1.lsof -i:端口号 用于查看某一端口的占用情况,比如查看8000端口使用情况,lsof -i:8000 # lsof -i:8000 COMMAND PID USER ...

  4. IDEA 基本配置

    idea使用基本配置 1配置JDK开发环境 File->project structure: 2取消自动更新 file->setting:Appearance &Behavior下 ...

  5. EF 配置

    DbContext public class ZSZDbContext : DbContext { //ILog ILogger 容易混淆 private static ILog log = LogM ...

  6. 【GC】

    using 语句适用于清理单个非托管资源的情况,而多个非托管对象的清理最好以 try-finnaly 来实现,因为嵌套的 using 语句可能存在隐藏的 Bug.内层 using 块引发异常时,将不能 ...

  7. sysbench_mysql

    ref http://seanlook.com/2016/03/28/mysql-sysbench/ 测试 当执行下面这个sysbench测试mysql的时候,你不知道的可能可能是: 这到底是在测试读 ...

  8. java 交集 差集 并集

    package com.wish.datastrustudy; import java.util.HashSet; import java.util.LinkedList; import java.u ...

  9. How To:防火墙规则去重

    主要命令 iptables-save| awk ' !x[$0]++ | iptables-restore 演示: [root@testname ~]# iptables -vL Chain INPU ...

  10. bug的分类和等级

    一.bug的定义 软件的bug,狭义指软件程序的漏洞或缺陷,广义指测试工程师或用户提出的软件可改进的细节.或与需求文档存在差异的功能实现等 对应三个测试目的:(3个为了) 1.为了发现程序的代码或业务 ...