L1-030.一帮一

“一帮一学习小组”是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组。本题就请你编写程序帮助老师自动完成这个分配工作,即在得到全班学生的排名后,在当前尚未分组的学生中,将名次最靠前的学生与名次最靠后的异性学生分为一组。

输入格式:

输入第一行给出正偶数N(<=50),即全班学生的人数。此后N行,按照名次从高到低的顺序给出每个学生的性别(0代表女生,1代表男生)和姓名(不超过8个英文字母的非空字符串),其间以1个空格分隔。这里保证本班男女比例是1:1,并且没有并列名次。

输出格式:

每行输出一组两个学生的姓名,其间以1个空格分隔。名次高的学生在前,名次低的学生在后。小组的输出顺序按照前面学生的名次从高到低排列。

输入样例:

8
0 Amy
1 Tom
1 Bill
0 Cindy
0 Maya
1 John
1 Jack
0 Linda

输出样例:

Amy Jack
Tom Linda
Bill Maya
Cindy John
#include<stdio.h>
struct stu{
    int flag;
    char name[10];
    int group;
}s[50];
int main(){
    int i,j,x=1,num,p=0;
    scanf("%d",&num);
    for(i=0;i<num;i++){
        scanf("%d %s",&(s[i].flag),s[i].name);
        s[i].group=0;
    }
    for(i=0;i<num;i++){
        if(s[i].flag==0&&s[i].group==0){
            for(j=num-1;j>=0;j--){
                if(s[j].group==0&&s[j].flag==1){
                    s[i].group=x;
                    s[j].group=x;
                    x++;
                    break;
                }
            }
        }
        if(s[i].flag==1&&s[i].group==0){
            for(j=num-1;j>=0;j--){
                if(s[j].group==0&&s[j].flag==0){
                    s[i].group=x;
                    s[j].group=x;
                    x++;
                    break;
                }
            }
        }
    }
    for(i=1;i<num/2+1;i++){
        for(j=0;j<num;j++){
            if(s[j].group==i){
                printf("%s",s[j].name);
                p++;
                if(p%2==1){
                    printf(" ");
                }
            }
        }

        if(i!=(int)(num/2))
            printf("\n");
    }
    return 0;
}
时间: 2024-08-10 17:17:22

L1-030.一帮一的相关文章

[家里蹲大学数学杂志]第030期复旦大学2010年实分析竞赛试题参考解答

1设 f 是实直线 R 上的实函数, 若有常数 M>0 使得对任何有限个两两不同的实数 x1,?,xn 都有 ∣∣∑ni=1f(xi)∣∣≤M . 证明: {x; f(x)≠0} 是至多可数的. 解答: 首先说明对 ? n∈N , An={x; f(x)>1/n} 是有限集 (个数不超过 n([M]+1) ). 若不然, ∑x∈Anf(x)>1n∑n∈An1>1n?n([M]+1)>M, 这是一个矛盾. 其次, 同上论述, Bn={x; f(x)<?1/n} 也是有限集

帮同学做的大一大作业:《我的家乡—郑州》

---恢复内容开始--- 最近在上海上学的一个高中同学让我帮忙,帮她做她们的计算机课程大作业. 由于关系不错我也不好意思拒绝就帮忙做了,因为这个学期刚刚开始接触HTML5和css,所以制作过程中有很多不懂的,而且由于HTML5是选修课,一星期只有一节,所以做这个花费了比较多的时间,这个网站是我制作的第一个网站,比较有纪念意义,所以发在博客上,作为纪念. 通过去做这个作业,我了解到很多课上学不到的东西.因为没有美工,从头到尾,都是我一个人在臆想,刚开始的时候,根本无从下手,我去参考别人做的家乡网站

大白话5分钟带你走进人工智能-第十四节过拟合解决手段L1和L2正则

                                                                                                  第十四节过拟合解决手段L1和L2正则 第十三节中,我们讲解了过拟合的情形,也就是过度的去拟合训练集上的结果了,反倒让你的模型太复杂.为了去解决这种现象,我们提出用L1,L2正则去解决这种问题. 怎么把正则应用进去?我们重新审视目标函数,以前我们可以理解目标函数和损失函数是一个东西.而有正则的含义之后,目

正则化方法:L1和L2 regularization、数据集扩增、dropout

本文是<Neural networks and deep learning>概览 中第三章的一部分,讲机器学习/深度学习算法中常用的正则化方法.(本文会不断补充) 正则化方法:防止过拟合,提高泛化能力 在训练数据不够多时,或者overtraining时,常常会导致overfitting(过拟合).其直观的表现如下图所示,随着训练过程,网络在training data上的error渐渐减小,但是在验证集上的error却反而渐渐增大--因为训练出来的网络过拟合了训练集,对训练集外的数据却不work

[LeetCode] 030. Substring with Concatenation of All Words (Hard) (C++/Java)

索引:[LeetCode] Leetcode 题解索引 (C++/Java/Python/Sql) Github: https://github.com/illuz/leetcode 030. Substring with Concatenation of All Words (Hard) 链接: 题目:https://oj.leetcode.com/problems/substring-with-concatenation-of-all-words/ 代码(github):https://gi

PHP开发学习门户帮您内推简历

如果您正在寻找一份与开发相关的工作,我可以帮您免费推荐一些相应的工作 将您的简历发送到:[email protected] 职位类型: Android工程师 PHP开发工程师 C++开发工程师 后台开发架构师 WEB前端工程师 美术设计师 Java高级工程师 -- 招聘公司: 百度 阿里巴巴 腾讯 新浪 完美世界 智明星通 乐元素 -- 自身要求: 个人文化修养高,有一定的学历 专业知识扎实,编程动手能力强 有团队合作意识,工作积极负责 具体的职位还会有其他一些特定要求,不再一一列举 欢迎正在求

【心灵鸡汤】大神,我有个问题,帮我看看

提前先申明今天的话题不是为了责备或者责怪,如果你非要这么理解我也没有办法 今天的话题就由下面这张图引出来,以下是一个找人帮忙解决问题的描述 最近这段时间经常遇到类似这样的寻求帮助的. 我说一下我看到这样的寻求帮助的对话之后内心的变化过程 认真读每一句话 从描述找遇到的问题 内心狂躁 心中一万个草泥马在奔腾 一般任何人只要找我问问题,我都会尽量尽我所能去解决,如果真真解决不了,当然也只能抱歉,因为我个人能力不够,仍然需要学习 那么为什么我内心会狂躁 因为我看了半天没读懂你到底要问什么,你的困难在哪

万创帮平台从工作到生活,一帮到底

在雷锋日当天,很多人自发开展学习"雷锋精神"的活动,对于雷锋的感人事迹,宝宝们应该不陌生,雷锋乐于助人,扶贫济困,谦虚待人,见义勇为,这些良好美德永远都不会过时,永远都值得我们学习. 生活中,我们常常需要帮助别人,也常常需要别人帮助自己,乐于助人是中华民族的传统美德,如果每个人都保有一颗热心肠,相信"人性冷漠"这样的词语也不会出现在我们的脑海中. 城市生活中,左领右舍互不相识,亲戚朋友远在他乡.当你回到家突然发现灯泡不亮了,或者是马桶堵水了,又或者是洗衣机出故障了,

《亿人帮》与《新米公益》竞品分析报告(简要版)

<亿人帮>与<新米公益>竞品分析报告(简要版) --白斌 [email protected] iOS. APP版本皆为最新版 2016.12.12 竞品选择:<新米公益> 理由:都是互联网+公益,项目模式相同,两款APP均在2015年第二季度上线,SWOT四方面两者几乎是同样的起点.下面从产品的五个层次对二者进行分析并提出建议 一.战略层: 1.产品比较 产品名称 志愿者参与方式 slogan <新米公益> 走路.早起.答题 不止更好的自己 <亿人帮&

MySQL日志审计 帮你揪出内个干坏事儿的小子

MySQL日志审计 帮你揪出内个干坏事的小子 简介 Part1:写在最前 MySQL本身并不像MariaDB和Percona一样提供审计功能,但如果我们想对数据库进行审计,去看是谁把我的数据库数据给删了,该怎么办呢?我们主要利用init-connect参数,让每个登录的用户都记录到我们的数据库中,并抓取其connection_id(),再根据binlog就能够找出谁干了那些破事儿. MariaDB如何审计,可移步: http://suifu.blog.51cto.com/9167728/1857