网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
07月30日漏签0天
vb吧 关注:156,099贴子:1,166,219
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 5回复贴,共1页
<<返回vb吧
>0< 加载中...

这题用编程咋做呢?

  • 只看楼主
  • 收藏

  • 回复
  • zhngheng4321
  • 函数调用
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

这题咋做?


  • 余思培
  • 网络通信
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
用思维来做就和正常思维一样,不然就穷举


2025-07-30 18:39:19
广告
不感兴趣
开通SVIP免广告
  • 璐村惂鐢ㄦ埛_0748V5Z馃惥
  • 网络通信
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
这个题目用用程序来做不合算。这是一道算术题。
关键在理解“至少”这个词。我认为,就是求在各种情况下,四项全能的最少人数。
那么也就意味着,要让不会的项目尽量落在不同的人身上。
于是:
不会游泳的60-42=18人
不会骑车的60-46=14人
不会溜冰的60-50=10人
不会打羽毛球的60-55=5人
按照上面的假设,这些人都不重合,所以不会一项的人的合计数为18+14+10+5=47人
如此一来,剩余的人,就是四项都会的人数的至小值:60-47=13人
其余的安排方法,四项都会的人总会多于这个值。当然也有一个最多值。
最多值,就要让不会的人,尽量都是同一人。
那么,很简单,就是四项人数里面的最小值42人了。
无论你怎么弄,四项都会的人∈[13,42]


  • 初音七奈
  • 钩子编程
    15
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
按照数学方法来做,就像3楼那样
如果要用编程思路解决,我有一个想法
用4位二进制数表示对4项运动的掌握情况(1表示会,0表示不会),这样1111(十进制15)就表示4项全会
4位数与具体运动的对应关系无所谓,这里就按如下顺序对应:1-游泳,2-骑车,4-溜冰,8-羽毛球
建立一个包含60个元素的数组,初始令所有元素都等于15,然后依次指定有谁“不会”哪项运动:比如对于第i个人a(i),令a(i)=a(i) Xor 1,就表示这个人不会游泳
如果让“不会”的人尽量向一端靠拢,那么最后仍然等于15的人数就是最多的,这里显然要尽量分散,让每个人最多只有一项不会的
指定完之后,剩下的等于15的人数就是要求的结果
完整代码如下:
Dim a(1 To 60) As Integer '每个人对4项运动的掌握情况
Dim b(3) As Integer '4项运动每一项会的人数,初始为60,
'每指定一个不会的人就将对应元素减1
Dim c(3) As Integer '每一项运动实际有多少人会,用来与数组b比较
Dim i As Integer, j As Integer, k As Integer
c(0) = 42: c(1) = 46: c(2) = 50: c(3) = 55
For i = 1 To 60
a(i) = 15
Next i
k = 1 'k表示运动编号(1、2、4、8),从1开始
j = 60 'j表示人的编号,从后往前来
'(注:如果这句下移一行,放到循环里,那么就可以计算最多有多少人4项全会)
For i = 0 To 3 '4项运动依次来(i表示运动编号的权值,k=2^i)
If b(i) > c(i) Then '如果这项运动还应该有不会的
a(j) = a(j) Xor k '将第j个人指定为不会该项运动
b(i) = b(i) - 1 '会的人数减1
j = j - 1 '继续指定前一个人
If j = 0 Then Exit For '如果所有人都被指定过“不会”的项目了,则退出循环
'(没人全会,不用继续了)
End If
Next i
MsgBox "至少有" & j & "人4项运动都会"
'最后这句本来应该先统计人数的,但是这里的情况特殊,
'循环完之后j的值恰好就是所求的人数,省去了统计的步骤;
'若非如此,统计的循环是少不了的


  • 4p64wa00ok0y7
  • 啥也不懂
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
枷飞 学-前端-开发-到-siki学院 -------低讶啄吃豢撞蓟薪拱苏呕剖鄙僚友章


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 5回复贴,共1页
<<返回vb吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示