关闭

SDNU1332 矩阵交换

97人阅读 评论(0) 收藏 举报
分类:


1)只交换行或列的标号。

#include <iostream>
#include <stdio.h>
#include <string>
#include <string.h>

using namespace std;
//int x[110][110];
//int y[110][110];
int x_bian[110];
int y_bian[110];
int matrix[110][110];
struct Node{
    int one,sec;
    string name;
}node[20010];
int main()
{
    int n,k;
        cin>>n;
        cin>>k;
        int g;
        for(int i=1;i<=n;i++){
            for(int j=1;j<=n;j++){
                cin>>matrix[i][j];
                //x[i][j]=matrix[i][j];
            }
        }
        //cout<<"1111"<<endl;
        for(int i=1;i<=n;i++){
            x_bian[i]=i;
            y_bian[i]=i;
        }
        string name;
        int xx;
        int yy;
        int endd=-1;
        for(int i=0;i<k;i++){
            cin>>node[i].name>>node[i].one>>node[i].sec;
            if(node[i].name=="Ask") endd=i;
        }
        for(int i=0;i<k;i++){
            if(node[i].name=="Ask"){
                cout<<matrix[x_bian[node[i].one]][y_bian[node[i].sec]];
                if(i!=endd){
                    cout<<endl;
                }
            }
            else if(node[i].name=="swapR"){
                int x_temp=x_bian[node[i].one];
                int x_temp2=x_bian[node[i].sec];
                x_bian[node[i].one]=x_temp2;
                x_bian[node[i].sec]=x_temp;
            }
            else if(node[i].name=="swapC"){
                int y_temp=y_bian[node[i].one];
                int y_temp2=y_bian[node[i].sec];
                y_bian[node[i].one]=y_temp2;
                y_bian[node[i].sec]=y_temp;
            }
            //if(i==k-1){
                //cout<<endl;
            //}
        }

    return 0;
}


2)

Description

给定一个N*N的矩阵,支持3种操作:

swapR a b:交换第a行和第b行的所有元素;

swapC a b:交换第a列和第b列的所有元素;

Ask a b:询问第a行第b列元素的值

Input

第一行N,K,为矩阵大小和操作个数

接下来N行每行N个正整数代表矩阵元素

接下来K行每行一个操作,格式如题目所述。

1 <= N <= 100; 1 <= K <= 20000;

Output

对于每个询问,输出一行作为答案。

Sample Input

2 30 12 3Ask 2 2swapR 1 2Ask 1 1

Sample Output

32

0
0

猜你在找
【直播】机器学习&数据挖掘7周实训--韦玮
【套餐】系统集成项目管理工程师顺利通关--徐朋
【直播】3小时掌握Docker最佳实战-徐西宁
【套餐】机器学习系列套餐(算法+实战)--唐宇迪
【直播】计算机视觉原理及实战--屈教授
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之矩阵--黄博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之凸优化--马博士
【套餐】Javascript 设计模式实战--曾亮
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:62530次
    • 积分:1860
    • 等级:
    • 排名:千里之外
    • 原创:181篇
    • 转载:2篇
    • 译文:0篇
    • 评论:5条
    最新评论
    Baidu statistics