NOIP200701奖学金
难度级别:A;            运行时间限制:1000ms; 运行空间限制:51200KB; 代码长度限制:2000000B
试题描述
   某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金。期末,每个学生都有3门课的成绩:语文、数学、英语。
   先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,
   如果两个同学总分和语文成绩都相同,那么规定学号小的同学 排在前面,这样,每个学生的排序是唯一确定的。  
   任务:先根据输入的3门课的成绩计算总分,然后按上述规则排序,最后按排名顺序输出前五名名学生的学号和总分。
   注意,在前5名同学中,每个人的奖学金都不相同,因此,你必须严格按上述规则排序。
   例如,在某个正确答案中,如果前两行的输出数据(每行输出两个数:学号、总分) 是:

7279

5279

这两行数据的含义是:总分最高的两个同学的学号依次是7号、5号。

这两名同学的总分都是 279 (总分等于输入的语文、数学、英语三科成绩之和) ,

但学号为7的学生语文成绩更高一些。如果你的前两名的输出数据是:

5279

7279

则按输出错误处理,不能得分。

输入
包含n+1行:  第1行为一个正整数n,表示该校参加评选的学生人数。 
第2到n+1行,每行有3个用空格隔开的数字,每个数字都在O到100之间z第1行的3个数 字依次表示学号为j-1的学生的语文、数学、英语的成绩。
每个学生的学号按照输入顺序编号为l~n (恰好是输入数据的行号减1)。 
所给的数据都是正确的,不必检验。 
输出
共有5行,每行是两个用空格隔开的正整数,依次表示前5名学生的学号和总分。 
输入示例
【输入样例1】 
6      
90 67 80  
87 66 91    
78 89 91     
88 99 77     
67 89 64       
78 89 98       
【输入样例2】
8     
80 89 89     
88 98 78    
90 67 80    
87 66 91     
78 89 91     
88 99 77     
67 89 64     
78 89 98  
 
输出示例

【输出样例1】 
6 265
4 264
3 258
2 244
1 237
【输入样例1】 
8 265
2 264
6 264
1 258
5 258

其他说明
【限制】50%的数据满足:各学生的总成绩各不相同 100%的数据满足: 6<=n<=300 

呵呵,典型暴力,我又一次呵呵的笑了,又用暴力A过了。。

#include<iostream>
using namespace std;
struct data
{
    int x,y,z,sum,id;
};
int read()
{
    ,f=;char ch=getchar();
    ')
    {
        ;
        ch=getchar();
    }
    ')
    {
        x=x*+ch-';
        ch=getchar();
    }
    return x*f;
}
;
data a[maxn];
int main()
{
    int n=read();
    ;i<n;i++)
    {
        a[i].y=read();
        a[i].x=read();
        a[i].z=read();
        a[i].sum=a[i].x+a[i].y+a[i].z;
        a[i].id=i+;
    }
    ;i<n;i++)
    {
        ;j<n;j++)
        {
            if(a[i].sum<a[j].sum)
            {
                swap(a[i].id,a[j].id);
                swap(a[i].sum,a[j].sum);
                swap(a[i].x,a[j].x);
                swap(a[i].y,a[j].y);
                swap(a[i].z,a[j].z);
            }
            else if((a[i].sum==a[j].sum) && (a[i].y<a[j].y))
            {
                swap(a[i].id,a[j].id);
                swap(a[i].sum,a[j].sum);
                swap(a[i].x,a[j].x);
                swap(a[i].y,a[j].y);
                swap(a[i].z,a[j].z);
            }
            else if((a[i].sum==a[j].sum) && (a[i].y==a[j].y) && (a[i].id>a[j].id))
            {
                swap(a[i].id,a[j].id);
                swap(a[i].sum,a[j].sum);
                swap(a[i].x,a[j].x);
                swap(a[i].y,a[j].y);
                swap(a[i].z,a[j].z);
            }
        }
    }
    ;i<;i++)cout<<a[i].id<<" "<<a[i].sum<<endl;
    ;
}

NOIP200705统计数字

难度级别:A;            运行时间限制:1000ms; 运行空间限制:51200KB; 代码长度限制:2000000B
试题描述
  某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*109)。已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。
输入
包含n+1行; 第一行是整数n,表示自然数的个数; 第2~n+1每行一个自然数。
输出
包含m行(m为n个自然数中不相同数的个数),按照自然数从小到大的顺序输出。每行输出两个整数,分别是自然数和该数出现的次数,其间用一个空格隔开。
输入示例
8 2 4 2 4 5 100 2 100
输出示例
2 3 4 2 5 1 100 2
其他说明
【限制】40%的数据满足:1<=n<=1000;80%的数据满足:1<=n<=50000;100%的数据满足:1<=n<=200000,每个数均不超过1500 000 000(1.5*10^9)

呵呵,还是暴力,我又笑了。。。又用暴力A过了。。。

#include<iostream>
using namespace std;
int read()
{
    ,f=;char ch=getchar();
    ')
    {
        ;
        ch=getchar();
    }
    ')
    {
        x=x*+ch-';
        ch=getchar();
    }
    return x*f;
}int main()
{
    int n=read();
    int a[n];
    ;i<n;i++)a[i]=read();
    sort(a,a+n);
    ;
    ;i<n;i++)
    {
        ])
        {
            printf(],temp);
            temp=;
        }
        ])temp++;
    }
    printf(],temp);
    ;
}

暴力无敌。。。。

NOIP201101&&05的更多相关文章

  1. Java学习笔记(05)

    目录: static的用法 主函数的定义 增强for的循环 单例设计模式 封装 一.Static的用法 1.对象的内存分析 对象的引用变量是存在于栈区,而在堆区开辟了一块内存空间,调用对象给成员变量赋 ...

  2. iOS系列 基础篇 05 视图鼻祖 - UIView

    iOS系列 基础篇 05 视图鼻祖 - UIView 目录: UIView“家族” 应用界面的构建层次 视图分类 最后 在Cocoa和Cocoa Touch框架中,“根”类时NSObject类.同样, ...

  3. 【web开发 | 移动APP开发】 Web 移动开发指南(2017.01.05更新)

    版本记录 - 版本1.0 创建文章(2016.12.30) - 版本1.1 更正了hybird相关知识:增加了参考文章(2017.01.05): + Web APP更正为响应式移动站点与页面,简称响应 ...

  4. javaSE基础05

    javaSE基础05:面向对象 一.数组 数组的内存管理 : 一块连续的空间来存储元素. Int [ ] arr = new int[ ]; 创建一个int类型的数组,arr只是一个变量,只是数组的一 ...

  5. 异步编程系列第05章 Await究竟做了什么?

    p { display: block; margin: 3px 0 0 0; } --> 写在前面 在学异步,有位园友推荐了<async in C#5.0>,没找到中文版,恰巧也想提 ...

  6. javascript基础05

    javascript基础05 1.变量的作用域 变量既可以是全局,也可以是局部的. 全局变量:可以在脚本中的任何位置被引用,一旦你在某个脚本里声明了全局变量,你就可以 在这个脚本的任何位置(包括函数内 ...

  7. Linux 第05天

    Linux 第05天 1.连接到Internet 1.1 配置网络信息 dmesg命令————查看网卡信息 dmesg | grep -i net ifconfig命令————查看IP.网关等相关信息 ...

  8. 05:统计单词数【NOIP2011复赛普及组第二题】

    05:统计单词数 总时间限制:  1000ms 内存限制:  65536kB 描述 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次 ...

  9. sublime text 3 license 2016.05

    补充:2016.05 最近经过测试,3个注册码在新版3103的sublime上已经不可用了. 现补充两枚新版的license key: -– BEGIN LICENSE -– Michael Barn ...

随机推荐

  1. Android - FrameLayout覆盖顺序

    FrameLayout覆盖顺序 本文地址: http://blog.csdn.net/caroline_wendy FrameLayout: Child views are drawn in a st ...

  2. delphi array应用 DayOfWeek星期几判断

    //array应用 DayOfWeek星期几判断 procedure TForm1.Button1Click(Sender: TObject);var    days:array[1..7] of s ...

  3. 安卓模拟器BlueStacks 安装使用教程(图解)

    系统要求 操作系统 Win XP SP3/Vista/Win 7/Win 8/Win 8.1 所需的运行环境 Win XP用户请先升级到SP3 并安装Windows Installer 4.5 Win ...

  4. .net平台下C#socket通信(转)

    上篇.net平台下C#socket通信(上)介绍了socket通信的基本原理及最基本的通信方式.本文在此基础上就socket通信时经常遇到的问题做一个简单总结,都是项目中的一些小问题,拿来此处便于下次 ...

  5. 构建千万级web访问架构

    . HTML静态化 其实大家都知道,效率最高.消耗最小的就是纯静态化的html页面,所以我们尽可能使我们的网站上的页面采用静态页面来实现,这个最简单的方法其实也是最有效的方法.但是对于大量内容并且频繁 ...

  6. 带约束优化问题 拉格朗日 对偶问题 KKT条件

    转自:七月算法社区http://ask.julyedu.com/question/276 咨询:带约束优化问题 拉格朗日 对偶问题 KKT条件 关注 | 22 ... 咨询下各位,在机器学习相关内容中 ...

  7. Centos自动登录系统并自动打开VNC Server

    系统自动登录 修改配置文件 sudo vim /etc/gdm/custom.conf 增加配置 [daemon] AutomaticLogin=spark AutomaticLoginEnable= ...

  8. B - Broken Keyboard (a.k.a. Beiju Text)

    Problem B Broken Keyboard (a.k.a. Beiju Text) You're typing a long text with a broken keyboard. Well ...

  9. jquery 页面跳转 表单提交

    $("#button").click(function () {            $("#form").first().attr("action ...

  10. Mysql 死锁相关操作

    该随笔随时记录日常工作中遇到的关于mysql的死锁相关问题 1)查看mysql当前的处理线程(connection) mysql> show processlist; 2)杀掉对应的connec ...