程序设计基础作业5

这篇博客包含了多个程序设计题目,涉及矩阵操作、数组处理和字符串操作。包括检查矩阵重复元素、删除数组重复元素、矩阵转置、检验矩阵主对角线对称性、字符串反序以及字符串部分删除等算法问题,所有题目均要求使用Python实现。
摘要由CSDN通过智能技术生成

13. (程序题)

题目编号:Exp04-Basic07,GJBook3-06-01

题目名称:检验矩阵重复元素

题目描述:编写程序判断任意给定n*n的两维整型数组中是否有相同元素。
 

输入:第一行输入数组行数n(≤10),第二行随机输入n*n个整数作为数组元素值。

输出:如果数组中有相同元素,则输出YES;否则,输出NO。
 

样例1:

输入:
3
1 2 3 4 5 6 7 8 9
输出:
NO

样例2:

输入:
3
1 1 2 3 4 5 6 7 8
输出:
YES
#include <cstdio>
#include <string>
#include <iostream>
using namespace std;
void swap(int *a,int *b){
    int *t = a;
    a = b;
    b = t;
}
int main(){
    int n;
    cin >> n;
    int a[1000];
    for(int i = 0;i < n*n;i++){
        cin >> a[i];
    }
    for(int i = 0;i < n*n;i++){
        for(int j = 0;j < n*n-1;j++){
            if(a[j] > a[j+1]){
                swap(a[j],a[j+1]);
            }
        }
    }
    for(int i = 0;i < n*n;i++){
        if(a[i+1] == a[i]){
            cout << "YES";
            return 0;
        }
    }
    cout << "NO";
}

9. (程序题)

题目编号:Exp04-Basic04,GJBook3-06-19

题目名称:删除重复元素

题目描述:编写函数,不使用其他辅助数组,把整型数组中重复元素删得只剩一个;所有未被删除元素都保留最先顺序移动到数组前面。


输入:第一行输入数组长度n(≤100),第二行依次从键盘随机输入n个整数作为数组元素值。

输出:已删除重复元素的数组,各元素间以一个西文空格间隔,最后一个元素后无字符。

样例1:

输入:
10
1 1 2 3 3 3 2 1 2 4
输出:
1 2 3 4

样例2:

输入:
10
1 0 2 2 2 2 2 2 2 2
输出:
1 0 2
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值