习题:足球比赛(搜索优化)

题目描述
      M中学一年一度的足球比赛开始啦,林老师作为一个热心观众,在得到消息后急急忙忙的赶到了M中学,可惜的是,当林老师赶到M中学时,所有的比赛都已经结束啦。最后林老师只得到了所有队伍的总积分表,林老师想知道,今年M中学的足球比赛一共有多少种可能的比赛情况(所有的足球队两两之间都会进行一场比赛,胜者得3分,败者得0分,打平得1分,任何两个球队之间有胜负关系不同的情况视为两种比赛情况)。
   输入格式
        第一行输入一个数字n(2≤n≤8)——表示M中学参加比赛的球队数量
接下来一行输入n个数字,表示每支球队得到的积分总数。题目保证至少存在一种可能的比赛情况。
         输出格式
          输出一个数字,表示可能的比赛情况数量。
     样例
          样例输入1
3
3 3 3

样例输出1
2

样例输入2
6
5 6 7 7 8 8

样例输出2
121
内存限制:64 MiB
 时间限制:5000 ms
          
这道题的时候最开始想到的是计数DP,但是再一想,发现并不对,因为当前状态需要不止一个参数来描述,空间上可能会炸,否定DP
再一看到n的范围,发现n很小,于是就想到了搜索,但是不加优化是不可能过的,因为将整个过程看作一个图,每个球队是点,那么球队之间的比赛自然而然就是边,每一个边有三种情况,所以就是3的8*7/2次方。
考虑搜索优化,有一个优化是很容易想到的,如果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值