stamp

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstdlib>
 4 #include<cstring>
 5 #include<algorithm>
 6 #include<cmath>
 7 using namespace std;
 8 int N,M;
 9 int MAX;
10 int temp[50000];//存组合邮票
11 int T[50000];
12 int vis[50000];
13 int f[50000];//f[i]=K 表示邮票组成价值i要用 K张
14 void ser(int);
15 void DP();
16
17 int main(){
18     cin>>N>>M;
19     ser(1);
20     for(int i=1;i<=M;i++){
21         cout<<T[i]<<" ";
22     }
23     cout<<endl;
24     cout<<"MAX="<<MAX;
25     return 0;
26 }
27 void ser(int now){
28     if(now==M+1){
29         DP();
30         return ;
31     }
32     else{
33         for(int i=temp[now-1]*N+1;i>=temp[now-1]+1;i--){
34             temp[now]=i;
35             ser(now+1);
36         }
37     }
38 }
39 void DP(){
40     sort(temp+1,temp+M+1);
41     memset(f,0x3f3f3f3f,sizeof(f));
42     f[0]=0;
43
44     for(int i=1;i<=200;i++){//i表示组成价值
45         for(int j=1;j<=M;j++){//使用第 j张邮票推过来
46             if(i-temp[j]>=0)
47                 f[i]=min(f[i],f[i-temp[j]]+1);
48             else ;
49         }
50         if(f[i]<=N){
51             if(i>MAX){
52                 MAX=i;
53                 memcpy(T,temp,sizeof(temp));
54             }
55         }
56         else return ;
57     }
58 }
时间: 2025-01-06 11:26:31

stamp的相关文章

FLV rtmp 里存在B帧的情况下,time stamp 时间戳应该怎么玩

FLV  rtmp 里存在B帧的情况下,time stamp 应该怎么玩 ? 先来引用stackoverflow的一篇文章:CompositionTime Composition time offsetSee ISO 14496-12, 8.15.3 for an explanation of composition times. The offset in an FLV file is always in milliseconds provides the offset between dec

ORA-19571: archived-log recid 31 stamp 858722423 not found in control file

所有归档日志镜像复制,报错了!!! RMAN> run{allocate channel 3 device type disk; RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =============================

解决tar命令出现“time stamp XXX in the future”的办法

在A机器上用tar压缩的文件,在B机器上进行解包的时候,如果两个机器的时间不一致,如B机器的时间落后A机器的时间,这时 就会出现time stamp in the future的问题.如何解决这个问题呢 (1)一是检查B机器的时间,如果确有问题请修改B机器的时间(sudo date -s "YYYY-MM-DD HH:MM:SS") (2)二是使用tar命令的-m参数,比如tar xmzf abc.tgz(-m, –touch, –modification-time[don't ext

make: *** No rule to make target `out/target/common/obj/APPS/framework-res_intermediates/src/R.stamp&#39;

/********************************************************************************** * make: *** No rule to make target `out/target/common/obj/APPS/framework-res_intermediates/src/R.stamp' * 说明: * 编译ethernet的遇到这个依赖没编译的问题. * * 2017-4-27 深圳 龙华民治樟坑村 曾剑锋

time stamp in javascript

JavaScript 获取当前时间戳: 第一种方法: var timestamp = Date.parse(new Date()); 结果:1280977330000 第二种方法: var timestamp = (new Date()).valueOf(); 结果:1280977330748 第三种方法: var timestamp=new Date().getTime(): 结果:1280977330748 第一种:获取的时间戳是把毫秒改成000显示, 第二种和第三种是获取了当前毫秒的时间戳

version stamp(版本戳)

版本戳产生的动机: 在分布式环境下,一份数据会存在多份拷贝.在对数据进行更新时,就可能会存在多个副本中的数据不一致的现象,这包含以下两种情形: 1. 某些节点中的数据已经更新,有些节点中的数据没有被更新. 2. 两个节点都已经更新,但是他们更新的内容出现了不一致. 这样就会产生一个问题,如果一个用户同时读取这两个节点中的数据,就会发现所读取出来的数据是不相同的.所以,用户需要决定所读出来的数据哪个是新的哪个是旧的,由此取出新的数据.为此,引入版本戳来标识数据的新旧版本. 版本戳的产生方法: 计数

[AGC002 D]Stamp Rally

题意 给出一个\(N\)个点\(M\)条边的无向图,还有\(Q\)个询问,每次询问给出两个节点\(x_i\)和\(y_i\),要求必须从这两个点出发总共访问至少\(z_i\)个点(包括\(x_i\)和\(y_i\)),要求最小化访问到的最大编号的边的编号,并输出这个编号. \(3\leq N \leq 10^5\) \(N-1\leq M\leq 10^5\) \(1\leq Q\leq 10^5\) 分析 先考虑一种最为暴力的做法,我们先考虑第\(i\)个询问,我们依次从\(1\cdots M

【agc002d】Stamp Rally

题目大意 无向图中,每次询问从x和y分别出发,一共经过z个点,使需要走过编号最大的边最小. 解题思路 对于暴力,我们对于每个询问二分答案ans,将1~ans的边加入,用并查集维护,如果x和y在同一个并查集,则判断该并查集大小是否大于等于z,否则判断该x所在并查集和y所在并查集大小的和是否大于等于z. 考虑如何优化,整体二分,二分边的编号,同时对于每个编号区间[l,r],记录一个询问集合,表示该集合的询问的答案在区间[l,r]中.同时用可撤销并查集维护. #include <cmath> #in

luogu4187 [USACO18JAN]Stamp Painting (dp)

可以发现,只要存在连续k个相同的,这个情况就一定是合法情况 然而这个不太好算,我们算不存在k个相同的,然后用$m^n$把它减掉 设f[i]为前i个,没有连续k个的 显然$f[i]=m^i ,i<K$ 然后我们现在想把f[i]转移过来,只要取f[i-k+1]..f[i-1]的所有情况,然后在每个的后面都涂上与这种情况的最后一个颜色不相同的颜色就可以了.容(bu)易(hui)证明这样做是不重不漏的 所以$f[i]=(M-1)\sum_{j=i-K+1}^{i-1}f[j]$ 1 #include<