NEFU 1284 宋哥看比赛

宋哥看比赛

Problem:1284
Time Limit:1000ms
Memory Limit:65535K

Description

    在大家的帮助下,宋哥终于拿到了ICPC的奖牌,他非常的高兴,恰逢LOL的S7全球总决赛就要开赛了,宋哥决定去现场看一部分比赛,他现在要买票,已知现在共有32支队伍进行比赛,首先进行小组赛,每个小组四只队伍,分为八个小组,每个小组内进行双循环比赛,也就是每个小组进行六场比赛,之后每个小组的前两名晋级,之后晋级的16支队伍进行淘汰赛,进行八场比赛后决出八强,之后四场比赛决出四强,之后的两场比赛决出冠亚军,最后一场比赛决出冠军,共进行了63场比赛,我们将其按进行顺序编号0-62,宋哥买了一些场次的门票(可重复购买),众所周知,宋哥是非常有钱的,他买完门票之后发现只花费了0.01%的钱,宋哥想知道他买票前有多少钱,你能帮帮他么?

Input

    第一行包含一个数字T,代表样例组数。之后每一组的第一行包含五个整数xi,分别代表小组赛、八分之一决赛、四分之一决赛、半决赛和决赛的票价,之后的一行包含一个数字n,代表宋哥购买的票数,之后的一行包含空格分隔的n个数字,代表宋哥买的每一张票的场次号。

Limits:
1<=T<=1000
1<=n<=100
0<=xi<=1e16

Output

    对于每一组样例,请输出"Case #x: y",x为组数,y为答案。

Sample Input

2
1 2 3 4 5
2
1 49
1 1 1 1 1
7
5 2 0 1 3 1 4

Sample Output

Case #1: 30000
Case #2: 70000

Hint

Source

MGH

题意:

中文题。

思路:

先把比赛分为五种,从0-47的,48-55的,56-59的,60-61的和62的。然后记下五种比赛的价钱,对于每次输入的编号都对应比赛的价钱加起来,最后*10000输出就行了。

但是数据大小会爆long long ,我用的long double 避免了这个问题。不过当时调试用0.llf输出的时候是可以过样例,后来再调试的时候就输不出来了。(真玄学。。)

后来改成用cout就可以调试过了。

代码:

#include <iostream>
#include <cstdio>
#include <cstring>
#include <iomanip>
#include <algorithm>
using namespace std;

int main()
{
    int t,cas=1,n;
    long long a[10];
    int s[105];
    scanf("%d",&t);
    while(t--)
    {
        for(int i=1;i<=5;i++)
            scanf("%lld",&a[i]);
        scanf("%d",&n);
        for(int i=1;i<=n;i++)
        {
            scanf("%d",&s[i]);
            if(0<=s[i]&&s[i]<=47)
                s[i]=1;
            else if(48<=s[i]&&s[i]<=55)
                s[i]=2;
            else if(56<=s[i]&&s[i]<=59)
                s[i]=3;
            else if(60<=s[i]&&s[i]<=61)
                s[i]=4;
            else
                s[i]=5;
        }
        long double sum=0;
        for(int i=1;i<=n;i++)
        {
            if(s[i]==1)
                sum+=a[1];
            else if(s[i]==2)
                sum+=a[2];
            else if(s[i]==3)
                sum+=a[3];
            else if(s[i]==4)
                sum+=a[4];
            else
                sum+=a[5];
        }
        sum=sum*10000;
        printf("Case #%d: ",cas++);
        cout<<setiosflags(ios::fixed);
        cout<<setprecision(0)<<sum<<endl;
    }
    return 0;
}


### 关于东北林业大学 (NEFU) 数据库及相关项目的资料 #### 1. NEFU 的背景介绍 东北林业大学(Northeast Forestry University, NEFU)作为一所具有鲜明林科特色的高等院校,在信息技术领域也有一定的研究基础和发展方向。该校不仅注重传统林业科学的研究,还积极将现代技术应用于森林资源管理、生态环境保护等领域[^1]。 #### 2. NEFU 数据库相关实验与教学 在 NEFU 的计算机科学与技术学院以及信息管理等相关专业的课程设置中,数据库原理及其应用是一个重要的组成部分。例如,在《数据库系统》课程的教学过程中,学生会通过实际操作 SQL 查询语句来掌握数据检索技巧。具体到实验环节,可能会涉及如下内容: - **查询所有学生都选修的课程名称** 这一需求可以通过转换逻辑表达式实现。由于 SQL 中不存在直接支持全称量词的操作符,因此可以采用否定的方式将其转化为存在量词的形式。即 `(∀x)P(x)` 可以被改写为 `¬(∃x ¬P(x))`。基于此理论,下面提供了一个可能的解决方案: ```sql SELECT cname FROM course c WHERE NOT EXISTS ( SELECT * FROM student s WHERE NOT EXISTS ( SELECT * FROM sc WHERE sc.sid = s.sid AND sc.cid = c.cid ) ); ``` 此处假设表结构定义如下: - 学生表 (`student`):包含字段 `sid`(学号), `sname`(姓名); - 课程表 (`course`):包含字段 `cid`(课程编号),`cname`(课程名); - 成绩表 (`sc`):记录学生的选课情况,关联字段分别为 `sid`, `cid`. 以上代码片段展示了如何利用嵌套子查询完成复杂条件下的筛选任务[^2]。 #### 3. 实际案例分析 —— 林业信息化建设项目 针对 NEFU 特有的学科优势,其参与开发的一些典型项目包括但不限于以下几个方面: - **智慧林业管理系统**:该项目旨在构建一套完整的数字化平台用于监测森林生长状况、病虫害防治效果评估等方面的工作。它依赖强大的后台数据库存储海量地理空间数据,并借助 GIS 技术呈现直观的地图界面供决策者参考。 - **碳汇计量模型优化工具包**:为了响应全球气候变化议题,研究人员设计了一款专门用来估算特定区域内植被吸收二氧化碳能力的应用程序。该软件内部集成了复杂的算法计算过程,同时需要连接外部气象站点获取实时环境参数输入值以便提高预测精度。 这些实例充分体现了 NEFU 将专业知识融入 IT 解决方案的能力水平。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值