nyoj 37
//nyoj 37 代码有点乱,和最长公共子序列很像,只是多加了一个数组,之前调用函数,
一直超时,可是我看了下,为什么用一个整形数组存放倒置字符串
竟然可以AC,我测试了下数据,打印出来的是一串地址,为什么为什么为什么啊。。。。
#include <iostream>
#include <string.h>
#define Max(a,b) a>b?a:b
using namespace std;
int dp[1001][1001]; int main()
{
int i,t;
cin>>t;
while(t--)
{
int s;
char a[1001];
cin>>a;
s=strlen(a);
char b[s];
for(i=0;i<s;i++) b[i]=a[s-i-1];
int i,j;
for(i=0;i<s;i++)
for(j=0;j<s;j++)
dp[i+1][j+1]=(a[i]==b[j])?dp[i][j]+1:Max(dp[i+1][j],dp[i][j+1]);
cout<<s-dp[s][s]<<endl;
}
return 0;
}
#include"stdio.h"
#include"iostream"
#include"string.h"
#define max(a,b) a>b?a:b
using namespace std;
int dp[1100][1100];
int main()
{
int a;
cin>>a;
while(a--)
{
char b[1100];
cin>>b;
int c=strlen(b);
int d[1100];
int e;
for(e=c-1;e>=0;e--)
d[e]=b[c-e-1];
int j,k;
for(j=0;j<c;j++)
for(k=0;k<c;k++)
{
if(b[j]==d[k])
dp[j+1][k+1]=dp[j][k]+1;
else
dp[j+1][k+1]=max(dp[j+1][k],dp[j][k+1]);
}
cout<<c-dp[c][c]<<endl;
}
}
nyoj 37的更多相关文章
- [NYOJ 37] 回文字符串
回文字符串 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的,比如"aba".当 ...
- nyoj 37回文串
述所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的,比如"aba".当然,我们给你的问题不会再简单到判断一个字符串是不是回文字符串.现在要求你,给你一个字符串,可 ...
- NYOJ -37回文字符串
这道题看了好大会没有思路,上网一搜发现这么简单,但是我为什么就想不到呢,??就是求和它的逆序之后的字符串最长公共子序列,然后用总的长度减去它就行了.原因是是因为只要是在公共子序列里面,那么他就是对称的 ...
- nyoj 37 回文字符串 【DP】
先反向复制一个新的字符串,然后再找出最长公共子串,在用长度n减去就可以 回文字符串 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描写叙述 所谓回文字符串,就是一个字符串,从 ...
- [Swust OJ 404]--最小代价树(动态规划)
题目链接:http://acm.swust.edu.cn/problem/code/745255/ Time limit(ms): 1000 Memory limit(kb): 65535 Des ...
- mahout安装和测试
Mahout 是 Apache Software Foundation(ASF) 旗下的一个开源项目,提供一些可扩展的机器学习领域经典算法的实现,旨在帮助开发者更加方便快捷地创建智能应用程序.Apac ...
- nyoj 题目37 回文字符串
回文字符串 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的,比如"aba".当 ...
- nyoj 737 石子合并 http://blog.csdn.net/wangdan11111/article/details/45032519
http://blog.csdn.net/wangdan11111/article/details/45032519 http://acm.nyist.net/JudgeOnline/problem. ...
- NYOJ 1007
在博客NYOJ 998 中已经写过计算欧拉函数的三种方法,这里不再赘述. 本题也是对欧拉函数的应用的考查,不过考查了另外一个数论基本定理:如何用欧拉函数求小于n且与n互质所有的正整数的和. 记eule ...
随机推荐
- jquery 文本框聚焦文字删除
做作业需要,自己写了一个,写的很烂. $(function() { $("#search_input").addClass("before_focus");/* ...
- Ubuntu安装配置Mysql
三种安装方式: 1. 从网上安装 sudo apt-get install mysql-server.装完已经自动配置好环境变量,可以直接使用mysql的命令. 注:建议将/etc/apt/sou ...
- mongodb 教程一
mongodb是nosql(not only sql)的一种方式 .是对不同于传统的关系型数据库的数据库管理系统的统称. NoSQL - 代表着不仅仅是SQL- 没有声明性查询语言- 没有预定义的模式 ...
- struct和typedef struct的用法
我首先想到的去MSDN上看看sturct到底是什么东西,虽然平时都在用,但是每次用的时候都搞不清楚到底这两个东西有什么区别,既然微软有MSDN,我们为什么不好好利用呢,下面是摘自MSDN中的一段话: ...
- U盘安装CentOS7
1:U盘启动,进入安装界面,点击Tab键,修改最后一行如下: ...=initrd.img linux dd quiet 查看centos系统盘符,例如:sdb4 2:重启电脑,进入安装界面,点击Ta ...
- API Hook完全手册
文章来源: http://blog.csdn.net/atfield 原文作者: ATField 整理日期: 2008-07-16 发表评论 字体大小: 小 中 大 注:本文是根据我两年前写的一个 ...
- fg bg 等命令
fg.bg.jobs.&.ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的 一.& 最经常被用到 这个用在一个命令的最后,可以把这个命令 ...
- (2015年郑州轻工业学院ACM校赛题) G 矩阵
看这道题的时候就感觉用一点动归思想+暴力 就能过了. #include<stdio.h> #include<iostream> #include<stack> #i ...
- 【转】Android Studio安装配置学习教程指南 Gradle基础--不错
原文网址:http://www.linuxidc.com/Linux/2015-02/113890p4.htm 其实很早之前也写了一篇Gradle的基础博客,但是时间很久了,现在Gradle已经更新了 ...
- 深入JS系列学习2
今天看和学习了深入理解JS系列2.3.4.5,更加明白了函数声明和表达式的区别,自执行函数和立即执行函数,js强大的原型链继承,js中对象的想过写法,modules模式等. 在ECMAScript中, ...