ZJU-PAT 1080. Graduate Admission (30) 浙大2014年上机复试第四题

编译原理考试大题分析【太原理工大学】 看完本篇大题拿 85% 的分应该没问题,TYUT 太原理工大学编译原理期末考试。 阅读详情
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<vector>
using namespace std;

const int maxn=40005;
const int maxm=101;

int n,m,k;
int num[maxm];
int lastRank[maxm];

vector<int> mm[maxm];

struct stu
{
    int id;
    int GE,GI,fin;
    int pre[6];
    int rank;
};
stu tt[maxn];

bool cmp(stu a,stu b)
{
    if(a.fin!=b.fin)
        return a.fin>b.fin;
    else
        return a.GE>b.GE;
}

void Init()
{
    scanf("%d%d%d",&n,&m,&k);
    for(int i=0; i<m; i++) scanf("%d",&num[i]);

    for(int i=0; i<n; i++)
    {
        scanf("%d%d",&tt[i].GE,&tt[i].GI);
        tt[i].fin=(tt[i].GE+tt[i].GI);
        tt[i].id=i;
        for(int j=0; j<k; j++)
        {
            scanf("%d",&tt[i].pre[j]);
        }
    }

    sort(tt,tt+n,cmp);

    for(int i=0; i<maxm; i++) mm[i].clear();

    tt[0].rank=0;
    for(int i=1; i<n; i++)
    {
        if(tt[i].fin==tt[i-1].fin && tt[i].GE==tt[i-1].GE) tt[i].rank=tt[i-1].rank;
        else
            tt[i].rank=i;
    }
}


void Select()
{
    for(int i=0; i<n; i++)
    {
        int curstuid=tt[i].id;

        for(int j=0; j<k; j++)
        {
            int schoolid=tt[i].pre[j];

            if(mm[schoolid].size()<num[schoolid])
            {
                mm[schoolid].push_back(curstuid);
                lastRank[schoolid]=tt[i].rank;   //当前学生的排名 非tt[curstuid].rank
                break;
            }
            else if(mm[schoolid].size()>0)
            {
                /*int laststu=mm[schoolid].back();  错误同上所述
                if(tt[laststu].rank==tt[i].rank)
                {
                    mm[schoolid].push_back(curstuid);
                    break;
                }*/
                if(tt[i].rank==lastRank[schoolid])
                {
                    mm[schoolid].push_back(curstuid);
                    break;
                }
            }
        }
    }
}

void output()
{
    for(int i=0; i<m; i++)
    {
        if(mm[i].size()==0)
            printf("\n");
        else
        {
            sort(mm[i].begin(),mm[i].end());
            for(int j=0; j<mm[i].size(); j++)
            {
                if(j==0)printf("%d",mm[i][j]);
                else printf(" %d",mm[i][j]);
            }
            printf("\n");
        }
    }
}

int main()
{
    Init();
    Select();
    output();
    return 0;
}

SAP 行业扫盲系列之一:SAP 从业者的分类 本文简单介绍了 SAP 从业者的分类,限于笔者狭隘的视角,可能存在遗漏或者不恰当的地方,希望大家在评论区指出。 那些在知乎咨询上向我提问关于进入 SAP 行业建议的朋友们,也请大家提问时注明自己想具体从事 SAP 行业哪一类的工作,这样才能得到更让你们满意的回复。感谢阅读。 阅读详情

相关推荐

APM 飞行模式切换--源码详解

APM飞控中有很多种方式可以改变飞行模式。其中最常见的为遥控器切换和地面站切换两种方式。 下面以遥控器切换为例详解飞行模式切换逻辑。 APM遥控器切换飞行模式的源代码在RC_Channel.cpp文件中的RC_Channel_Copter::do_aux_function_change_mode()函数中。 const bool success = copter.set_mode()调用Copter::set_mode()函数,在set_mode()函数中调用mode_fro...

qq_30623591的博客 2440

PAT甲级——Graduate Admission

题目描述 It is said that in 2013, there were about 100 graduate schools ready to proceed over 40,000 applications in Zhejiang Province. It would help a lot if you could write a program to automate the ...

Xiao2018428的博客 200

别再被坑了!手把手教你从官网下载免费正版Notepad++(附最新网盘链接)

本文详细指导如何从Notepad++官网安全下载正版软件,避免山寨版本带来的安全风险。通过识别官网特征、推荐官方下载渠道、揭露山寨网站骗局及验证正版功能,帮助用户高效获取纯净的Notepad++代码编辑器,并分享实用插件和配置优化技巧。

weixin_42527654的博客 562

1080 MOOC期终成绩 (25 分)

对于在中国大学MOOC(http://www.icourse163.org/ )学习“数据结构”课程的学生,想要获得一张合格证书,必须首先获得不少于200分的在线编程作业分,然后总评获得不少于60分(满分100)。总评成绩的计算公式为G=(G​mid−term​​×40%+G​final​​×60%),如果G​mid−term​​>G​final​​;否则总评G就是G​final​​。这里G​mid−term​​和G​final​​分别为学生的期中和期末成绩。 现在的问题是,每次考...

m0_51171995的博客 519

GD32F4系列替换STM32F4,HAL库CAN初始化卡死?一个Sleep模式的坑与填坑实录

本文详细解析了GD32F4系列替换STM32F4时,HAL库CAN初始化卡死的问题根源——Sleep模式差异。通过对比两款芯片CAN控制器的默认状态,提出了不修改HAL库源码的解决方案,即在HAL_CAN_MspInit()中清除SLEEP位,并分析了该方法的优势。文章还提供了国产MCU替换的通用建议和调试技巧,帮助开发者高效解决问题。

weixin_29174013的博客 216

使用moveit中的报错及解决

1.fatal error: moveit/move_group_interface/move_group.h: 没有那个文件或目录。// #include <moveit/move_group_interface/move_group.h> 改为。问题1 moveit/move_group_interface/move_group.h: 没有那个文件或目录。在运行c++程序时报错。

qq_60566155的博客 2285

PAT——A1080(排序)

题意链接: #include&lt;cstdio&gt; #include&lt;iostream&gt; #include&lt;cmath&gt; #include&lt;cstring&gt; #include&lt;algorithm&gt; using namespace std; #define maxn 10010 struct Student{ int GE,GI,su...

ZMST的博客 491

基于E310的纯逻辑代码实现AD9361射频收发

基于微相科技的E310平台实现AD9361的射频收发功能。采用纯逻辑控制的方式,不需要PS参与。实现了用VIO控制收发使能,发射功率,收发频率,数据接口时序控制,接收增益,BIST测试等功能。

xiaomingzi55的博客 2331

PAT-B1080 MOOC期终成绩(25 分)

分析: 输入信息时,将内容保存在map中,方便插入和查找,然后将内容拷贝到vector中,方便排序。

qq_38127801的博客 701

CONN工具箱分析fmri数据笔记1

前言一、安装二、预处理三、去噪 前言 CONN:functional connectivity toolbox,是基于MATLAB和SPM的一个对功能磁共振数据进行分析的一个工具箱。可以进行以下分析: Seed-based correlations (SBC), ROI-to-ROI correlations, graph analyses, Independent component analyses(group-ICA), Masked (ICA) Amplitude of Low-Frequency.

weixin_52073820的博客 6586

用 CL_ABAP_ZIP 在 ABAP 里打包任意文件:从前端多选到 ZIP 交付的一条龙实践

本文介绍了在SAP ABAP中实现文件打包交付的完整解决方案。文章首先区分了ZIP和GZIP的不同用途:ZIP用于多文件归档,GZIP用于单数据流压缩。核心流程包括四个步骤:文件选择、二进制上传、内存打包和ZIP输出,并提供了关键对象与函数的速查表。针对实际项目中常见的乱码、大文件处理等问题给出了解决方案,最后展示了一个完整的可运行示例代码,涵盖了从文件选择到下载的全流程实现。该方案适用于财务、质量、运维等多种业务场景,能够有效解决多文件交付的最后一公里问题。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 215

1080. Graduate Admission (30) (模拟排序 ZJU_PAT)

题目链接:http://www.patest.cn/contests/pat-a-practise/1080 It is said that in 2013, there were about 100 graduate schools ready to proceed over 40,000 applications in Zhejiang Province. It would he...

1486

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

PAT甲级刷题之路——A1080 Graduate Admission

PAT甲级1080 Graduate AdmissionPAT A1080 Graduate Admission(30分)原题如下题意理解自己的想法 PAT A1080 Graduate Admission(30分) 原题如下 题意理解 每一份申请包含两个成绩:国家通过考试成绩GEG_EGE​,面试成绩GIG_IGI​,最终成绩为(GE+GI)/2(G_E+G_I)/2(GE​+GI​)/2...

qq_43677396的博客 598

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

PAT A1080

#include &lt;iostream&gt; #include &lt;algorithm&gt; #include &lt;vector&gt; using namespace std; const int maxn=40010; struct student{ int ge,gi,school[6],rank,index; }st[maxn]; int N,M,K,quota[150]...

weixin_37565706的博客 481

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

1080 Graduate Admission(30 分)(C++)

It is said that in 2011, there are about 100 graduate schools ready to proceed over 40,000 applications in Zhejiang Province. It would help a lot if you could write a program to automate the admission...

qq_41562704的博客 413

PAT甲级1080

1080. Graduate Admission (30) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue It is said that in 2013, there were abo

湛蓝的天空 850

【PAT】A1080. Graduate Admission(排序,现实模拟)

【PAT】A1080. Graduate Admission(排序,现实模拟) @(PAT) 链接:https://www.patest.cn/contests/pat-a-practise/1080 思路: 1. 其实主要是理解并处理好题目所说的录取的规则。用一个结构体存储好信息后,使用sort进行排序,然后根据录取的规则进行排名。 2. 排名完后根据录取的规则,排名从前往后一个学生一...

Life in Technicolor 359

PAT1080 Graduate Admission (30)

题目链接: http://www.nowcoder.com/pat/5/problem/4310 题目描述:(1)分数分为Ge和Gi两部分,按照总分给学生排名次,如果总分一样,则按照Ge来排; (2)每个学生都有几个志愿,按照志愿高低给学生分配学校; (3)对于名次一样又报了同一学校的学生,该学校只要接收了一个就得接收全部,即便超出了原定的招生名额;题目分析:每次模拟题写得总是很冗长的感觉啊

_今已亭亭如盖矣 1189

PAT甲级1080 Graduate Admission (30 分)

1080Graduate Admission(30分) It is said that in 2011, there are about 100 graduate schools ready to proceed over 40,000 applications in Zhejiang Province. It would help a lot if you could write a p...

Dexter 334

PAT1080

#include #include #include #include using namespace std; struct student { int ge; int gi; int finalg; int choose[5]; bool flag; int rank; int id; }stu[40100]; struct schoolx

ZhzetFor的博客 375

pat-1080(排序)

pat-1080(排序) 思路: (1)按照成绩从大到小排序,tol相同再比较,EG。 (2)vc[i]数组记录每个数字排序后的序号,然后对vc[i]这个数组进行排序(按照排序前的序号大小)。 #include&lt;iostream&gt; #include&lt;cstdio&gt; #include&lt;cstring&gt; #include&lt;string&gt; #in...

积少成多,水滴石穿 238

【PAT-A】1080. Graduate Admission 写题记录

主要是模拟,创建两个结构体保存学生、学校数据。理清思路就好了 这次的bug在于 cmp函数中,if 以后必须出现else而不是else if,否则会导致没有return 还有如果数组过于复杂,将其赋值给一个临时变量,便于理解和书写,比如代码中的 prefer = stu[i].choice[j] #include &lt;cstdio&gt; #include &lt;cstring&g...

weixin_43456345的博客 450

【题解】【PAT甲】1080 Graduate Admission (30 分)(测试点3)

题目链接 PTA | 程序设计类实验辅助教学平台 题目描述 It is said that in 2011, there are about 100 graduate schools ready to proceed over 40,000 applications in Zhejiang Province. It would help a lot if you could write a program to automate the admission procedure. Each ..

Elephant_King的博客 381

PAT 1080. Graduate Admission (30) 模拟高考志愿录取规则

再次1A hahah /************************* 题意: 高考选志愿。 每个人有Ge和Gi, 最终分数是Gf。 比较方式是先看Gf,再看Ge 每个人k个志愿。 每个学校有一定的名额。 1个学生如果能被录取,则按照其志愿顺序选学校。 如果学校名额满了,只能再按志愿选下一个。 如果学校要选3个人,但是刚好有2个人分数相同 并且都是第3名,则2个人同时录取。 ******

DrawnBreak 396

[PAT-A 1080]Graduate Admission

题目大意: 有N位考生,M所学校,每位考生都有K个志愿学校,每个学校也有招生人数限制。 给出每位学生的考试成绩GE GI,以及K个志愿学校的编号。 要求模拟录取招生的过程,并输出米格学校录取的考生编号(从小到大) 录取规则:(有点像高考的平行志愿) 1)先按考生总分(GE+GI)/2进行排名,总分相同的按照GE的大小,高的在前,若GE相同,则排名相同。 2)按排名先后来考虑每个考生最终录取的学...

RegulusF的博客 251

PAT甲级题目1080 Graduate Admission

代码: #include <iostream> #include <vector> #include <algorithm> using namespace std; struct peo{ int id, ge, gi, fin; vector<int> choice; }; bool cmp(peo& a, peo& b) { if (a.fin != b.fin) return a.fin > b.fin;

weixin_43801993的博客 165
上一篇: ZJU-PAT 1079. Total Sales of Supply Chain (25) 浙大2014年上机复试第三题
下一篇: ZJU-PAT 1078. Hashing (25) 浙大2014年上机复试第二题
Matrix_Reloaded
博客等级 码龄14年 18粉丝 36原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值