MOOC清华《程序设计基础》第5章第1题:判断数列的对称性
来源:互联网 发布:内存卡数据恢复软件 编辑:程序博客网 时间:2024/05/21 22:25
题目描述
给定一个数组,判断其中的数据序列是否左右对称:偶数个数时,左右两半部分正好逆序;奇数时,除中间位置数外,左右逆序
输入格式第一行N表示一共有N个测试用例,也即接下来的输入数据共有N行。
接下来的每一行表示一个输入数组,第一个数字n表示该数组的元素个数,后面紧跟着n个数,中间都以空格隔开
输出格式是逆序输出YES,否则输出NO(注意都是大写,小写判错)
样例输入35 1 2 3 2 14 1 1 1 26 2 1 2 2 1 2样例输出
YESNOYES
#include <iostream>using namespace std;int main() { int N = 1; cin >> N; int *length = new int[N]; //必须单独存放,这样在数据处理上就化难为易了 int **array = new int *[N]; for (int i = 0; i < N; i++) { cin >> length[i]; array[i] = new int[length[i]]; for (int j = 0; j < length[i]; j++) cin >> array[i][j]; }void Symmetry(int *a, int n);for(int i = 0; i < N; i++)Symmetry(array[i], length[i]); for (int i = 0; i < N; i++) delete[] array[i]; //注意释放二维数组的技巧,“深度释放内存” delete[] array; delete[] length; return 0;} void Symmetry(int *a, int n) { int middle, i, j; if(n % 2 == 0) { middle = n / 2; for(i = 0, j = n - 1; i <= middle - 1 && j >= middle; ) if(a[i] == a[j]) i++, j--; else {cout << "NO" << endl;break;} if(i - j == 1) //这个条件是关键cout << "YES" << endl;}else{middle = n / 2;for(i = 0, j = n - 1; i < middle && j > middle;)if(a[i] == a[j]) i++, j--;else {cout << "NO" << endl;break;}if(i - j == 0) //这个条件是关键cout << "YES" << endl;} }
测试结果:
阅读全文
0 0
- MOOC清华《程序设计基础》第5章第1题:判断数列的对称性
- MOOC清华《程序设计基础》第3章第5题:求特定数的和
- MOOC清华《程序设计基础》第5章第2题:破损棋盘的八皇后问题
- MOOC清华《程序设计基础》第1章第5题:银行存款问题
- MOOC清华《程序设计基础》第5章:归并排序
- MOOC清华《程序设计基础》第5章:青蛙过河问题
- MOOC清华《程序设计基础》第3章第2题:谁的饭量小
- MOOC清华《程序设计基础》第4章第3题:不相同的个数(用筛法做)
- MOOC清华《程序设计基础》第5章第5题:用递归算法实现数组求和
- MOOC清华《程序设计基础》第2章第5题:银行存款问题2
- MOOC清华《程序设计基础》第5章第3题:用递归算法求最大公约数
- MOOC清华《程序设计基础》第5章第4题:用递归算法实现选择排序
- MOOC清华《程序设计基础》第1章第1题:三角形求面积
- MOOC清华《程序设计基础》第1章第2题:求周长
- MOOC清华《程序设计基础》第1章第3题:求平方和
- MOOC清华《程序设计基础》第1章第4题:求解方程
- MOOC清华《程序设计基础》第2章第1题:三角形求面积2
- MOOC清华《程序设计基础》第3章第1题:谁是大块头
- bzoj2190: [SDOI2008]仪仗队
- MUI前端框架轮播图片+九宫格(左右滑动)
- BZOJ 1054 [HAOI2008]移动玩具
- 初识线段树
- linux C学习之实现简单的web服务器
- MOOC清华《程序设计基础》第5章第1题:判断数列的对称性
- shell实现简单的进度条
- python3.6 杨辉三角 小白能懂
- Android7.0多窗口模式初探
- 看透 Spring MVC 源代码分析与实践 —— 网站基础知识
- 关于servlet单选框,复选框取值问题
- Remote Access to IPython Notebooks via SSH
- 爱摘苹果的小明
- [BZOJ 2500]幸福的道路 树形dp+单调队列+二分答案