| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4740 人关注过本帖
标题:某人有m张8角和n张5角的邮票,使用这些邮票能组合出多少种不同面值的邮资,m ...
只看楼主 加入收藏
lzd744088
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2017-3-22
结帖率:0
收藏
已结贴  问题点数:20 回复次数:24 
某人有m张8角和n张5角的邮票,使用这些邮票能组合出多少种不同面值的邮资,m,n从键盘上输入。
#include "stdio.h"   
int main()     
{     
    int m,n,t,max,count;  
    max=8*m+5*n;  
    scanf("%d%d",&m,&n);  
    for(t=0;t<=max;t++)  
    {  
        
      for(int j=0;j<=m;j++)  
      {  
        for(int k=0;k<=n;k++)  
        {  
            if(t==j*8+k*5)  
            {  
                count++;  
                  
            }  
        }  
      }  
    }  
    printf("%d\n",count);  
    return 0;     
}  我做的没有把重复的减去,想知道还怎么减?
搜索更多相关主题的帖子: 键盘 count include 邮票 
2017-03-24 00:57
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:4 
这个还需要再想想才行~

[此贴子已经被作者于2017-3-24 01:33编辑过]


[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-03-24 01:03
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43182
注 册:2014-5-20
收藏
得分:4 
是不是这样:
#include <stdio.h>
main()     
{     
    int i, j, m, n, count;  
    scanf("%d%d",&m,&n);  
    count = m + n;  
    for (i=1; i<=m; i++)  
        for(j=1; j<=n; j++)  
            count++;  
    printf("%d\n",count);  
}
2017-03-24 07:18
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9024
专家分:54030
注 册:2011-1-18
收藏
得分:4 
以下是引用吹水佬在2017-3-24 07:18:47的发言:

是不是这样:
#include  
main()      
{      
    int i, j, m, n, count;   
    scanf("%d%d",&m,&n);   
    count = m + n;   
    for (i=1; i<=m; i++)   
        for(j=1; j<=n; j++)   
            count++;   
    printf("%d\n",count);   
}

你这就是求 m*n-1 吧
2017-03-24 08:30
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43182
注 册:2014-5-20
收藏
得分:0 
以下是引用rjsp在2017-3-24 08:30:17的发言:


你这就是求 m*n-1 吧

不是吧?
如果m=n=1,m*n-1不就是0了?
2017-03-24 08:40
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43182
注 册:2014-5-20
收藏
得分:0 
以下是引用吹水佬在2017-3-24 07:18:47的发言:

是不是这样:
#include <stdio.h>
main()     
{     
    int i, j, m, n, count;  
    scanf("%d%d",&m,&n);  
    count = m + n;  
    for (i=1; i<=m; i++)  
        for(j=1; j<=n; j++)  
            count++;  
    printf("%d\n",count);  
}

“组合出多少种不同面值的邮资”,是不同面值邮资的组合?还是不同面值邮资的合计?
如果是合计,就要考虑合计数有重复的问题,即8m1+5n1=8m2+5n2。

2017-03-24 08:47
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9024
专家分:54030
注 册:2011-1-18
收藏
得分:0 
以下是引用吹水佬在2017-3-24 08:40:52的发言:

 
不是吧?
如果m=n=1,m*n-1不就是0了?

我写错了,本来想写的是 (m+1)*(n+1)-1
2017-03-24 08:55
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
收藏
得分:0 
研究过一下~是一个线性规划问题~
判断面值是否重复可以推出它是否能通过子状态构成~
具体一点就是五张八分换八张五分~如果该面值能把其中的把l五张八分换成八张五分则这张面值就意味着会重复~
(m+1)*(n+1)-重复数~
大概就是这样~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-03-24 09:00
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43182
注 册:2014-5-20
收藏
得分:0 
组合面值合计不重复,这样的结果对否?
图片附件: 游客没有浏览图片的权限,请 登录注册

#include <stdio.h>
main()     
{     
    int i, j, m, n, count=0;
    printf("分别输入8角和5角的张数:");
    scanf("%d%d",&m,&n);
    for (i=0; i<=m; i++)  
    {
        for(j=0; j<=n; j++)  
        {
            if (i==0 && j==0)
                continue;
            if (n-m < 3)
            {
                if (!(i<j && j-i==8))
                {
                    count++;
                    printf("组合%d\t%d张8角+%d张5角\t%d角\n", count, i, j, i*8+j*5);
                }
            }
            else
            {
                if (!(i>j && i-j==5))
                {
                    count++;
                    printf("组合%d\t%d张8角+%d张5角\t%d角\n", count, i, j, i*8+j*5);
                }
            }
        }
    }
    printf("共有%d种组合\n",count);  
}


2017-03-24 11:32
寒风中的细雨
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:66
帖 子:1710
专家分:8645
注 册:2009-9-15
收藏
得分:4 
回复 9楼 吹水佬
测试数据 20 20

~ # awk '{print $3}' txt | sort | wc -l
427
~ # awk '{print $3}' txt | sort | uniq | wc -l
232

重复
2017-03-24 14:43
快速回复:某人有m张8角和n张5角的邮票,使用这些邮票能组合出多少种不同面值的邮 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.037726 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved