作死上CODEVS,青铜题
题面:输入一列整数,输出它们的总和、最大值、最小值、并从大到小输出。
先上一波伪代码,认真地做一波数组排序题。
#include<stdio.h>
#include<math.h>
] , b[];
int main ()
{
, min = pow( , ) - , max = -pow(,);
scanf("%d",&a);
; i <= a ; i ++)
{
scanf("%d",&c[i]);
sum += c[i];
if(c[i] > max)
max = c[i] ;
if(c[i] < min)
min = c[i] ;
//先统计不重复的个数,记为An 。
//桶排序,或者冒泡排序进行排序,注意重复的值,放到这个数组b中。
;
}
printf("%d\n%d\n",max,min);
; k <= /*An*/; k ++ )
printf("%d\n",b[k]);
;
}
伪代码
不知道有没有把这个题做复杂,总之在啥都不会的情况下,第一个想到的是桶排序,然而只会冒泡排序的部分。
//一会专门开一个随笔写写自己对于那些排序的理解与想法。
很皮,在研究一番桶排序之后,发现桶排序,就是将值放到另一个数组对应的值的数组位数上面去,b[c[i]] = 1,如果需要多次输入,改成b[c[i]] ++即可。
于是很兴奋地试了样例,过了,交上去,果断WA了,尬的一批。
#include<stdio.h>
#include<math.h>
] , b[];
int main ()
{
, min = pow( , ) - , max = -pow(,);
scanf("%d",&a);
; i <= a ; i ++)
{
scanf("%d",&c[i]);
sum += c[i];
if(c[i] > max)
max = c[i] ;
if(c[i] < min)
min = c[i] ;
b[c[i]] = ;
}
printf("%d\n%d\n%d\n%d\n",sum,max,min,max);
; j -- )
; k < b[j]; k ++ )
printf("%d\n",j);
;
}
第一次交
于是观察到了一个奇葩的值
10 9 9 9 9 9 9 9 9 9 9
在我的第一个桶排序中,很迷地输出不了最大值,于是在for循环前加了一个最大值,导致这组值输出的多了一个9。问题不大,在外层循环的地方扩到了最大,很愉快地过了。
#include<stdio.h>
#include<math.h>
] , b[];
int main ()
{
, min = pow( , ) - , max = -pow(,);
scanf("%d",&a);
; i <= a ; i ++)
{
scanf("%d",&c[i]);
sum += c[i];
if(c[i] > max)
max = c[i] ;
if(c[i] < min)
min = c[i] ;
b[c[i]] = ;
}
printf("%d\n%d\n%d\n",sum,max,min);
; j >= ; j -- )
; k < b[j]; k ++ )
printf("%d\n",j);
;
}
但是最后还是WA了一个点,因为500太小了,测试点有一个是5058,就没有输出。
最终完成代码
#include<stdio.h>
#include<math.h>
] , b[];
int main ()
{
, min = pow( , ) - , max = -pow(,);
scanf("%d",&a);
; i <= a ; i ++)
{
scanf("%d",&c[i]);
sum += c[i];
if(c[i] > max)
max = c[i] ;
if(c[i] < min)
min = c[i] ;
b[c[i]] = ;
}
printf("%d\n%d\n%d\n",sum,max,min);
; j >= ; j -- )
; k < b[j]; k ++ )
printf("%d\n",j);
;
}
AC代码
ps:我觉得我的代码不丑吧,虽然在算法方面很颓,但是还是算得上工整好看的吧。
复习了桶排序,近40分钟才A了这么一道题,尬。
那是我愿意付诸一生的人,现在却没法拥有。
作死上CODEVS,青铜题的更多相关文章
- codevs 搜索题汇总(青铜+白银级)
1792 分解质因数 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 青铜 Bronze 题目描述 Description 编写一个把整数N分解为质因数乘积的程序. 输入描 ...
- 用python做oj上的简单题(持续更新中.......)
本人刚開始接触python,在oj上解一些简单的题,欢迎交流,不喜勿喷. OJ地址链接:acm.sdut.edu.cn http://acm.sdut.edu.cn/sdutoj/showproble ...
- hdoj上的一题和程序设计第二次作业的拓展-人见人爱a+b
hdoj上一道有意思的题目,题目: 人见人爱a+b 敲的也蛮快的,大概十分钟左右就AC了.代码如下: 人见人爱a+b #include<stdio.h> int main() { int ...
- 2018 ACM-ICPC 中国大学生程序设计竞赛线上赛 H题 Rock Paper Scissors Lizard Spock.(FFT字符串匹配)
2018 ACM-ICPC 中国大学生程序设计竞赛线上赛:https://www.jisuanke.com/contest/1227 题目链接:https://nanti.jisuanke.com/t ...
- 2018 ACM-ICPC 中国大学生程序设计竞赛线上赛 F题 Clever King(最小割)
2018 ACM-ICPC 中国大学生程序设计竞赛线上赛:https://www.jisuanke.com/contest/1227 题目链接:https://nanti.jisuanke.com/t ...
- 网络流 24 题汇总(LOJ 上只有 22 题???)
太裸的我就不放代码了...(黑体字序号的题表示值得注意) 1.搭配飞行员 [LOJ#6000] 二分图最大匹配. 2.太空飞行计划 [LOJ#6001] 最小割常规套路.输出方案.(注:这题换行符要用 ...
- 上POJ刷题
Online Judge系统 Online Judge系统(简称OJ)是一个在线的判题系统.用户可以在线提交给定问题的多种程序(如C.C++.Pascal.Java)源代码,系统对源代码进行 ...
- codevs 搜索题汇总(钻石+大师级)
1043 方格取数 2000年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description 设有N*N的方格图 ...
- codevs 搜索题汇总(黄金级)
2801 LOL-盖伦的蹲草计划 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 黄金 Gold 题目描述 Description 众所周知,LOL这款伟大的游戏,有个叫盖 ...
随机推荐
- 原生ajax详解
Ajxa局部刷新用于提高用户体验.Ajax技术的核心是XMLHttpRequest对象(简称XHR) XMLHttpRequest对象 XMLHttpRequest对象在ie7及更高版本可以这样申明. ...
- 学习一点Markdown的基本知识
本文于2017年3月18日首发于LinkedIn,请参考链接 这个世界的进步是由一些"懒"的人推动的.今天讲的这个Markdown,其实也是因为一批厌倦了HTML的各种标签的语法, ...
- 帝国CMS万能标签的使用
标签名称: 带模板的信息调用标签[万能标签] [ecmsinfo]栏目ID/专题ID,显示条数,标题截取数,是否显示栏目名,操作类型,标签模板ID,只显示有标题图片[/ecmsinfo] 说明:e ...
- 防火墙之netfailt、iptables详解
[TOC] Iptables入门 # 1.iptables介绍 linux的包过滤功能,即linux防火墙,它由netfilter 和 iptables 两个组件组成. netfilter 组件也称为 ...
- SSH自动断开连接的原因、配置(转)
方法一: 用putty/SecureCRT连续3分钟左右没有输入, 就自动断开, 然后必须重新登陆, 很麻烦. 在网上查了很多资料, 发现原因有多种, 环境变量TMOUT引起,ClientAliveC ...
- IT生涯, 我的常用软件清单
IT生涯, 我的常用软件清单 SkySeraph Jan. 26th 2017 Email:skyseraph00@163.com 更多精彩请直接访问SkySeraph个人站点:www.skysera ...
- js的几种简单排序算法及其效率实测
function swap(arr,index1,index2){ var t = arr[index1]; arr[index1] = arr[index2]; arr[index2] = t; } ...
- 多线程CountDownLatch和Join
如果现在有五个线程A.B.C.D.E,请问如何用E线程用于统计A.B.C.D四个线程的结果? 题意需要用E线程统计A.B.C.D四个线程,也就是说E线程必须要等到前面四个线程运行结束之后才能执行.那么 ...
- WPF之路五:wpf 隐藏与显示 Visibility
WPF里枚举变量Visibility 有三个值:Visible, Collapsed和Hidden.其中Collapsed是WPF新引进的,其作用是不仅隐去Control,同时也会移除Control所 ...
- Python之路-计算机基础
一·计算机的组成 一套完整的计算机系统分为:计算机硬件,操作系统,软件. 硬件系统:运算器,控制器和存储器 ,输入设备,输出设备. 1.运算器:负责算数运算和逻辑运算,与控制器一起组成CPU. 2 ...