【九度】题目1419:文献排序
来源:互联网 发布:玻璃胶 白色透明知乎 编辑:程序博客网 时间:2024/04/30 20:03
题目地址:http://ac.jobdu.com/problem.php?pid=1419
题目描述:
现在你的导师给你了一个待排序的参考文献列表,要你排好序给他。
文献列表中每一条文献记录只占一行。排序的规则和string类型字符串的比较规则一致(在排序时如果该字符串中包含大写字母,则当作小写字母处理,保证没有相同大小的字符串,但是输出结果不能改变任一字符串),按升序排列。
输入:输入包括多组,每组输入第一行包括一个整数n,(1<=n<=200),接下来有n行,每行包括一行文献记录,文献记录的长度s(1<=s<=200)。
输出:对每组输入。输出排好序的文献记录。
样例输入:
3
abc hello!
Abc hellz!
bbc hello!
样例输出:
abc hello!
Abc hellz!
bbc hello!
字符串比较,转为小写。然后打印输出。
C++ AC
#include <stdio.h>#include <string.h>#include <string>#include<algorithm>using namespace std;const int maxn = 102;const int maxm = 202;int n,i;struct Node{ char allStr[maxm]; }nodes[maxn]; void toLowCase(char s[]){ int len = strlen(s); for(i = 0 ; i < len ; i++){ if(s[i] >= 'A' && s[i] <= 'Z'){ s[i] = s[i] - 'A' + 'a'; } }} bool cmp(Node node1, Node node2){ toLowCase(node1.allStr); toLowCase(node2.allStr); return strcmp(node1.allStr,node2.allStr) < 0;} int main(){ while(scanf("%d",&n)!=EOF) { gets(nodes[0].allStr); for(i = 0;i < n; i++){ gets(nodes[i].allStr); } sort(nodes,nodes+n,cmp); for(i = 0;i < n; i++){ puts(nodes[i].allStr); } } return 0;}/************************************************************** Problem: 1419 User: wangzhenqing Language: C++ Result: Accepted Time:90 ms Memory:1044 kb****************************************************************/
Java AC
import java.util.Arrays;import java.util.Scanner; public class Main { /* * 1419 */ public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNextLine()) { int N = Integer.parseInt(scanner.nextLine()); SortString array[] = new SortString[N]; for (int i = 0; i < N; i++) { String ab = scanner.nextLine(); SortString sortStr = new SortString(ab.toLowerCase(), ab); array[i] = sortStr; } Arrays.sort(array); for (int i = 0; i < N; i++) { System.out.println(array[i].getAllMsg()); } } } static class SortString implements Comparable<SortString>{ private String firStr; private String allMsg; public String getFirStr() { return firStr; } public void setFirStr(String firStr) { this.firStr = firStr; } public String getAllMsg() { return allMsg; } public void setAllMsg(String allMsg) { this.allMsg = allMsg; } public SortString(String firStr, String allMsg) { super(); this.firStr = firStr; this.allMsg = allMsg; } public int compareTo(SortString o) { return this.getFirStr().compareTo(o.getFirStr()); } }}/************************************************************** Problem: 1419 User: wzqwsrf Language: Java Result: Accepted Time:1450 ms Memory:30228 kb****************************************************************/
- 【九度】题目1419:文献排序
- 九度 题目1419:文献排序
- 九度oj 文献排序
- 九度题目1202:排序
- 九度题目1202:排序
- 九度 题目1202:排序
- 【九度】题目1202:排序
- 九度OJ 题目1066:字符串排序
- 九度OJ 题目1196:成绩排序
- 九度OJ 题目1135:字符串排序
- 九度OJ 题目1130:日志排序
- 九度题目:字符串排序(1135)
- 【九度】题目1007:奥运排序问题
- 【九度】题目1023:EXCEL排序
- 【九度】题目1061:成绩排序
- 【九度】题目1054:字符串内排序
- 【九度】题目1117:整数奇偶排序
- 【九度】题目1135:字符串排序
- 解读Makefile (2)
- Maven下使用jetty进行debug
- 浅谈员工忠诚度
- Android-设备中SQL文件查看
- 我的Linux书架
- 【九度】题目1419:文献排序
- TCP连接中的TIME_WAIT状态
- PowerDesigner生成sql及说明文档
- 输入输出流(一)——格式控制细节探讨
- 大小写字母转化
- 网络协议之五(UDP)
- CCproxy代理服务器
- sort
- 移动uiView 缩放uiView+一个View实现不同子view的功能