任务说明:将杂乱无章的数据变得有规律。有各种各样的排序算法,看情况使用。

这里有空还是把各种排序算法总结下吧。qsort需要会写。。

P1177 【模板】快速排序

这个题目懒得写了,直接sort了...

以后要补上..

sort版本可以忽略了orz

 #include <iostream>
#include <cstdio>
#include <cstdlib>
#include <algorithm> using namespace std; int main() {
int N;
cin >> N;
vector<int> vec(N);
for (int i = ; i < N; ++i) {
cin >> vec[i];
}
sort(vec.begin(), vec.end());
if (N > ) {
printf("%d", vec[]);
for (int i = ; i < N; ++i) {
printf(" %d", vec[i]);
}
printf("\n");
}
return ; }

P1059 明明的随机数

要求排序+去重

我直接sort -> unique -> resize 了...

 #include <iostream>
#include <cstdio>
#include <cstdlib>
#include <algorithm> using namespace std; int main() {
int N;
cin >> N;
vector<int> vec(N);
for (int i = ; i < N; ++i) {
cin >> vec[i];
}
sort(vec.begin(), vec.end());
auto iter = unique(vec.begin(), vec.end());
vec.resize(std::distance(vec.begin(), iter));
printf("%d\n", vec.size());
if (N > ) {
printf("%d", vec[]);
for (int i = ; i < vec.size(); ++i) {
printf(" %d", vec[i]);
}
printf("\n");
}
return ; }

P1068 分数线划定

感觉比模拟题还水,忽略吧

 #include <iostream>
#include <cstdio>
#include <cstdlib>
#include <algorithm>
#include <utility> using namespace std; typedef pair<int, int> P; bool cmp(P p1, P p2) {
if (p1.second != p2.second) {
return p1.second > p2.second;
} else {
return p1.first < p2.first;
}
} int main() {
int n, m;
cin >> n >> m;
const int bar = m * / ;
//printf("bar = %d \n", bar); vector<P> vec(n);
for (int i = ; i < n; ++i) {
cin >> vec[i].first >> vec[i].second;
}
sort(vec.begin(), vec.end(), cmp);
if (bar == ) {
printf("0\n");
return ;
}
const int score = vec[bar-].second;
//printf("score = %d \n", score);
int idx = bar-;
while(idx < n && vec[idx].second == score) {
++idx;
}
//printf("final idx = %d \n", idx);
printf("%d %d\n", score, idx);
for(int i = ; i < idx; ++i) {
printf("%d %d\n", vec[i].first, vec[i].second );
} return ;
}

P1781 宇宙总统

候选人有编号和选票,输出最大票数候选人的编号和选票。因为选票很大,所以不能用long long型。用string类型来比较。

 #include <iostream>
#include <cstdio>
#include <cstdlib>
#include <algorithm>
#include <utility>
#include <string>
#include <cstring> using namespace std; typedef pair<int, int> P; int main() {
int n;
cin >> n;
vector<string> vec(n);
string str;
for (int i = ; i < n; ++i) {
cin >> str;
vec[i] = str;
}
string strMax = vec[];
int ansIdx = ;
for (int i = ; i < n; ++i) {
if (vec[i].size() > strMax.size()) {
strMax = vec[i];
ansIdx = i;
} else if (vec[i].size() == strMax.size() && vec[i] > strMax) {
strMax = vec[i];
ansIdx = i;
}
}
cout << ansIdx+ << endl;
cout << strMax << endl;
return ;
}

【Luogu】【关卡2-3】排序(2017年10月) 【AK】的更多相关文章

  1. 欢迎来怼-Alpha周(2017年10月19)贡献分配规则和分配结果

    .从alpha周(2017年10月19日开始的2周)开始,提高贡献分比重. 贡献分 : 团队分 = 1 : 5 教师会在核算每位同学总分时按比例乘以系数. 每位同学带入团队贡献分10分,如果团队一共7 ...

  2. 2017年10月31日结束Outlook 2007与Office 365的连接

    2017 年10月31日 ,微软即将推出 Office 365中Exchange Online邮箱将需要Outlook for Windows的连接,即通过HTTP Over MAPI方式,传统使用R ...

  3. 江西省移动物联网发展战略新闻发布会举行-2017年10月江西IDC排行榜与发展报告

    编者按:当人们在做技术创新时,我们在做“外包产业“:当人们在做制造产业,我们在做”服务产业“:江人们在做AI智能时,我们在做”物联网“崛起,即使有一个落差,但红色热土从不缺少成长激情. 本期摘自上月初 ...

  4. 【Luogu】【关卡2-4】排序Ex(2017年10月)

    任务说明:这里的排序就更上一层了.不仅融合了别的算法与技巧,排序本身也有各种花招.

  5. 【Luogu】【关卡2-16】线性动态规划(2017年10月)【还差三道题】

    任务说明:这也是基础的动态规划.是在线性结构上面的动态规划,一定要掌握. P1020 导弹拦截 导弹拦截 P1091 合唱队形 老师给同学们排合唱队形.N位同学站成一排,音乐老师要请其中的(N-K)位 ...

  6. 【Luogu】【关卡2-14】 树形数据结构(2017年10月)【AK】

    任务说明:由一个根节点分叉,越分越多,就成了树.树可以表示数据之间的从属关系 P1087 FBI树 给一个01字符串,0对应B,1对应I,F对应既有0子节点又有1子节点的根节点,输出这棵树的后序遍历. ...

  7. 【Luogu】【关卡2-9】带有技巧的搜索(2017年10月)

    任务说明:这里的搜索不仅包含了dfs和bfs,还包括剪枝.记录等技巧以加快速度. [USACO06FEB]数字三角形Backward Digit Su… 滑雪 吃奶酪 靶形数独 P1118 [USAC ...

  8. 【Luogu】【关卡1-8】BOSS战-入门综合练习2(2017年10月)【AK】------都是基础题

    P1426 小鱼会有危险吗 我个人觉得这个题目出的不好,没说明白,就先只粘贴的AC代码吧 #include <bits/stdc++.h> using namespace std; int ...

  9. 【Luogu】【关卡2-15】动态规划的背包问题(2017年10月)【还差一道题】

    任务说明:这是最基础的动态规划.不过如果是第一次接触会有些难以理解.加油闯过这个坎. 01背包二维数组优化成滚动数组的时候有坑有坑有坑!!!必须要downto,downto,downto 情景和代码见 ...

随机推荐

  1. shell函数的存储和显示

  2. go语言从例子开始之Example1.helloworld

    Example: package main import "fmt" func main() { fmt.Println("hello world") } Re ...

  3. oldlinux

    http://oldlinux.org/Linux.old/ http://oldlinux.org/Book-Lite/

  4. Spring boot与thymeleaf的集成

    # thymeleaf热部署 spring.thymeleaf.cache=false @Value("${spring.thymeleaf.cache}")          p ...

  5. 关于Linux_监控系统资源/性能命令_vmstat

    (系统资源查看命令-vmstat[监控系统资源命令])          command:vmstat  [刷新延时 刷新次数]   分解解析: procs:进程信息字段:              ...

  6. MySQL数据类型DECIMAL用法详解

    MySQL DECIMAL数据类型用于在数据库中存储精确的数值.我们经常将DECIMAL数据类型用于保留准确精确度的列,例如会计系统中的货币数据. 要定义数据类型为DECIMAL的列,请使用以下语法: ...

  7. Spring MVC processing flow

    原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11484057.html DispatcherServlet receives the request. ...

  8. 【Python CheckiO 题解】SP

    题目描述 [Speech Module]:输入一个数字,将其转换成英文表达形式,字符串中的所有单词必须以一个空格字符分隔. [输入]:一个数字(int) [输出]:代表数字的英文字符串(str) [前 ...

  9. 【leetcode】921. Minimum Add to Make Parentheses Valid

    题目如下: 解题思路:上周都在忙着参加CTF,没时间做题,今天来更新一下博客吧.括号问题在leetcode中出现了很多,本题的解题思路和以前的括号问题一样,使用栈.遍历Input,如果是'('直接入栈 ...

  10. zk不同页面之间的即时刷新

    公共刷新方法 import org.zkoss.bind.annotation.GlobalCommand; import org.zkoss.bind.annotation.NotifyChange ...