POJ 4044 Score Sequence
题意 :给你两个序列,进行降序排序,找出连续的公共子序列,将这个子序列输出,然后对个位数升序排序,如果个位数相同就按数的大小排,再输出这个新排好的。
思路 :先排序,再找公共子序列,最后个位排序输出。
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm> using namespace std; int a1[],a2[] ;
int b1[],b2[] ; bool cmp(int a,int b)
{
if(a% == b%)
return a < b ;
return a % < b % ;
}
int main()
{
int T ;
while(~scanf("%d",&T))
{
while(T--)
{
memset(a1,,sizeof(a1)) ;
memset(a2,,sizeof(a2)) ;
int n1,n2 ;
scanf("%d %d",&n1,&n2) ;
for(int i = ; i < n1 ; i++)
scanf("%d",&a1[i]) ;
for(int i = ; i < n2 ; i++)
scanf("%d",&a2[i]) ;
sort(a1,a1+n1) ;
sort(a2,a2+n2) ;
reverse(a1,a1+n1) ;
reverse(a2,a2+n2) ;
int len1 = ;
b1[] = a1[] ;
for(int i = ; i < n1 ; i++)
{
if(a1[i] != a1[i-])
b1[len1++] = a1[i] ;
}
int len2 = ;
b2[] = a2[] ;
for(int i = ; i < n2 ; i++)
{
if(a2[i] != a2[i-])
b2[len2++] = a2[i] ;
}
int len = -,pos = ;
for(int i = ; i < len1 ; i++)
{
for(int j = ; j < len2 ; j++)
{
if(b1[i] == b2[j])
{
int lenx = ;
for(int k = ; i+k < len1&&j+k < len2 ; k++)
{
if(b1[i+k] == b2[j+k])
lenx ++ ;
else break ;
}
if(len < lenx)
{
len = lenx ;
pos = i ;
}
break ;
}
}
}
if(len == -)
{
printf("NONE\n") ;
continue ;
}
for(int i = pos ; i < pos+len ; i++)
{
printf("%d ",b1[i]) ;
}
printf("\n") ;
sort(b1+pos,b1+pos+len,cmp) ;
for(int i = pos ; i < pos+len ; i++)
printf("%d ",b1[i]) ;
printf("\n") ;
}
}
return ;
}
POJ 4044 Score Sequence的更多相关文章
- poj 4044 Score Sequence(暴力)
http://poj.org/problem?id=4044 大致题意:给出两个班级的成绩,先按降序排序,而且没有成绩同样的.然后求连续的最长公共子序列.输出时,先输出最长公共子序列,然后按个位数字递 ...
- poj 1699 Best Sequence(AC自己主动机+如压力DP)
id=1699" target="_blank" style="">题目链接:poj 1699 Best Sequence 题目大意:给定N个D ...
- [poj P1141] Brackets Sequence
[poj P1141] Brackets Sequence Time Limit: 1000MS Memory Limit: 65536K Special Judge Description ...
- Poj 1019 Number Sequence( 数据分析和操作)
一.题目大意 有这样一个序列包含S1,S2,S3...SK,每一个Si包括整数1到 i.求在这个序列中给定的整数n为下标的数. 例如,前80位为1121231234123451234561234567 ...
- POJ 2478 Farey Sequence
名字是法雷数列其实是欧拉phi函数 Farey Sequence Time Limit: 1000MS Memory Limit: 65536K Total Submi ...
- POJ 2478 Farey Sequence(欧拉函数前n项和)
A - Farey Sequence Time Limit:1000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64u ...
- POJ 2778 DNA Sequence(AC自动机+矩阵加速)
DNA Sequence Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9899 Accepted: 3717 Desc ...
- POJ 2593 Max Sequence
Max Sequence Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 17678 Accepted: 7401 Des ...
- POJ 3691 DNA Sequence (AC自动机 + 矩阵 有bug,待修改)
DNA Sequence Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9889 Accepted: 3712 Desc ...
随机推荐
- Java设计模式之--代理模式学习
1.代理模式定义 为其他对象提供一种代理以控制对这个对象的访问.代理对象起到中介服务,可以去掉功能服务和增加额外的服务. 其实按照官方的说法可能不太好理解,代理模式就好比我们生活中买票,一般情况下我们 ...
- 《NFS文件共享服务的搭建》RHEL
首先要清楚一点:NFS服务的共享是建立在linux和linux之间的. 配置任何服务之前我们要做的2件事: iptables -F setenforce 0 NFS服务内核防火墙影响不大,主要 ...
- 锋利的jquery-DOM操作
1 查找节点 ① 可根据jquery选择器来完成节点查找 ② 可用.text()获取节点的文本内容 ③ 可用.attr("attr")获取属性value 2 创建节点 ① 可用jq ...
- 主机win10与虚拟机ubuntu14.04通信
主机是笔记本win10系统,在virtualbox虚拟机里面安装了ubuntu14.04系统,现在想让它们互联互通. 我的笔记本是通过路由器无线连接接入的互联网,设置了固定ip:192.168.0.4 ...
- mybatis的一对多映射
延续mybatis的一对一问题,如果一个用户有多个作品怎么办?这就涉及到了一对多的问题.同样的,mybatis一对多依然可以分为两种方式来解决. 一.使用内嵌的ResultMap实现一对多映射 1)实 ...
- js获取location.href的参数实例代码
本文为大家介绍下js如何获取location.href的参数,需要注意的是去掉参数里最开头的?号,具体实现如下,有需要的朋友可以参考下,希望对大家有所帮助 window.location.search ...
- trade 主要前端组件
jQuery Custombox http://www.jqueryfuns.com/resource/view/27
- linux 进程控制笔记
进程创建 普通函数调用完成后,最多返回(return)一次,但fork/vfork会返回二次,一次返回给父进程,一次返回给子进程 父进程的返回值为子进程的进程ID,子进程的返回值为0 1.pid_t ...
- 批量kill mysql processlist进程
如果大批量的操作能够通过一系列的select语句产生,那么理论上就能对这些结果批量处理.但是mysql并没用提供eval这样的对结果集进行分析操作的功能.所以只能现将select结果保存到临时文件中, ...
- Redis 三:存储类型之字符串
.赋值单个: [赋值多个:mset a b c ] .取值单个: get a [取值多个:mget a b c] .数字递增 incr a 在a的基础上+,那就是返回101 如果预先的值为0,那么返回 ...