技术标签: 九度 九度Online Judge题解 c语言 矩阵计算 九度OJ OJ
首先输入一个5 * 5的数组,然后输入一行,这一行有四个数,前两个代表操作类型,后两个数x y代表需操作数据为以x y为左上角的那几个数据。
操作类型有四种:
1 2 表示:90度,顺时针,翻转4个数
1 3 表示:90度,顺时针,翻转9个数
2 2 表示:90度,逆时针,翻转4个数
2 3 表示:90度,逆时针,翻转9个数
输入有多组数据。
每组输入一个5 * 5的数组,然后输入一行,这一行有四个数,前两个代表操作类型,后两个数x y代表需操作数据为以x y为左上角的那几个数据。
输出翻转后的数组。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 1 3 1 1
11 6 1 4 5 12 7 2 9 10 13 8 3 14 15 16 17 18 19 20 21 22 23 24 25
思路:
总体思路是每次旋转90度,超过就多次旋转。可能犯错的细节较多,多调试。
代码:
#include <stdio.h>
#define M 5
struct point {
int i;
int j;
};
struct point rotate(int n, int i, int j, int x, int y, int degree)
{
struct point p;
p.i = i;
p.j = j;
int tmp;
for (int k=1; k<=degree/90; k++)
{
tmp = p.i;
p.i = (x-y) + p.j;
p.j = (x-1) + (y-1) + n-1 - tmp;
}
return p;
}
int main(void)
{
int i, j;
int d, n, x, y;
int a[M][M], b[M][M];
struct point p;
int degree;
while (scanf("%d", &a[0][0]) != EOF)
{
for(i=0; i<M; i++)
{
for(j=0; j<M; j++)
{
if (i == 0 && j == 0)
continue;
scanf("%d", &a[i][j]);
}
}
scanf("%d%d%d%d", &d, &n, &x, &y);
if (d == 1)
degree = 90;
else
degree = 270;
for(i=0; i<M; i++)
{
for(j=0; j<M; j++)
{
if (i<x-1 || i>=x-1+n || j<y-1 || j>=y-1+n)
b[i][j] = a[i][j];
else
{
p = rotate(n, i, j, x, y, degree);
b[p.i][p.j] = a[i][j];
}
}
}
//printf("i=%d, j=%d\n", i, j);
for(i=0; i<M; i++)
{
for(j=0; j<M; j++)
{
if (j != 0)
printf(" ");
printf("%d", b[i][j]);
}
printf("\n");
}
}
return 0;
}
/**************************************************************
Problem: 1171
User: liangrx06
Language: C
Result: Accepted
Time:0 ms
Memory:912 kb
****************************************************************/
文章浏览阅读5.9w次,点赞19次,收藏43次。解决方法:在文件中加入下面两行代码,使用绝对路径import sys,ossys.path.append(os.path.dirname(__file__) + os.sep + '../')在练习Python中package的相对导入时,即from . import XXXorfrom .. import XXX 时会遇到这样两个错误:SystemErro..._valueerror: attempted relative import beyond top-level package
文章浏览阅读1.4k次,点赞3次,收藏3次。LOW实验关键代码<?php $file = $_GET['page'];//The page we wish to display?>这是一个典型的在动态网页中的用法,就像注我上一篇文章【文件包含漏洞原理】所讲,写入我们想要显示的页面。这里就是对用户的输入完全信任,因此就导致可以包含任意页面。程序员在写程序的时候要站在不安全的角度上,而不是用户的角度上,这是从网站安全的角度来说。实验:接下来通过文件包含漏洞,查看位于根目录下的1.txt文件的内容,同过这两个实验对比总结远_<?php // the page we wish to display $file = $_get[ 'page' ]; // input valid</div>
文章浏览阅读4k次。一、创建cordova项目1、创建项目前提条件(1)node.js详细安装步骤可参考node.js官网:https://nodejs.org/en/下载安装成功后,在命令窗口中输入npm -v查看是否成功(2)JDK在官网下载安装:https://www.oracle.com/index.html并配置环境变量(重要)成功后,在命令窗口输入java 和javac。出现类似信息则表示安装成功。(3)..._cordova 打包出来是 aap格式
文章浏览阅读2k次。一、背景最近一个springboot单体架构的项目改造为springcloud微服务项目的过程中,为了使用nacos的配置中心,同时又想本地开发环境不依赖于nacos,就把application.yml改造成了bootstrap.yml,同时多环境配置application-dev.yml也改为了bootstrap-dev.yml。初始环境配置文件结构如下:二、logback.xml不生效问题微服务改造完成后,本地开发环境logback.xml不生效,最明显的特征是配置的SQL打印没有了,而服务器_${nacos_host:127.0.0.1}
文章浏览阅读616次,点赞28次,收藏13次。这里我特地整理了一份《Android开发核心知识点笔记》,里面就包含了自定义View相关的内容除了这份笔记,还给大家分享Android学习PDF+架构视频+面试文档+源码笔记,高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料这几块的内容。非常适合近期有面试和想在技术道路上继续精进的朋友。分享上面这些资源,希望可以帮助到大家提升进阶,如果你觉得还算有用的话,不妨把它们推荐给你的朋友~喜欢本文的话,给我点个小赞、评论区留言或者转发支持一下呗~
文章浏览阅读496次。是一款基于Golang、Gin、Xorm、Vue、ElementUI、MySQL等技术栈开发平台框架,拥有完善的(RBAC)权限架构和基础核心管理模块,为了缩短研发周期,系统框架集成了代码生成器,内置平台自定义研发的模板引擎,可以一键CRUD生成整个模块的全部代码,本框架为一站式系统框架开发平台,可以帮助开发者提升开发效率、降低研发成本,同时便于后期的系统维护升级。......_vue智慧城市项目
文章浏览阅读1.2k次。QuasarClitable自定义插槽内容的使用在使用QuasarCli开发时候遇到table数据不显示问题,组件部分在此部分 v-slot插槽top=>top-row=>body=>bottom分别对应表头,表头下面和表格可以在body插槽中定义表格的样式<template> <div class="q-pa-md"> <q-table title="Treats" :rows="rows" :_quasar table top-row
文章浏览阅读4.2k次。在本月举办的“2018四季度安全可靠技术和应用研讨会”上,作为安可联盟成员,云宏隆重发布了“全融合安可云”解决方案,得到了工信部、广东省领导的高度好评以及与会联盟单位的高度关注。在信息化发展的浪潮中,云计算支撑着相关领域业务的高速发展,云计算关键技术更是新一代信息技术领域不可或缺的一部分。安可领域要实现创新发展,采用安全可靠云计算方案便显得尤为关键。云宏安可云解决方案,即为..._安可云
文章浏览阅读1.3w次,点赞10次,收藏11次。在使用mybatis或者mybatis-plus时候,有些时候会出现数据库的字段名和实体类的字段名不一致的情况,如果运行那么这个字段就会无法进行自动映射而报错。这里就以我的数据库name字段名和这里的实体类的u_name字段名为例。解决办法有以下三种方法一:将数据库中的字段和实体类中的字段名修改成一样的名字方法二:如果是自定以mapper.xml文件中手写的sql查询语句,可以给字段起一个别名例如这里就可以写成select name as u_name from…方法三:使用注解._mybatis-plus 数据库名与实体不一样
文章浏览阅读101次。前言分布式,是程序员必备技能之一,在面试过程中属于必备类的,在工作中更是会经常用到。而Kafka是一个分布式的基于发布订阅的消息队列,目前它的魅力是无穷的,对于Kafka的奥秘,还需要我们细细去探寻。要谈对Kafka有多熟悉,我相信还是阿里的大佬们最有发言权,所以今天分享的内容,就是Alibaba内部供应的“限量笔记”,关于Kafka的精髓全部写在这里面了,不得不感叹:不愧是Alibaba的技术官啊,真的服了!关于这份Kafka限量笔记,我只能在文章中展示部分的章节内容和核心截图,如果你需要完_alibaba kafka不是中国的嘛
文章浏览阅读427次。title: LeetCode No.131categories:OJLeetCodetags:ProgramingLeetCodeOJLeetCode第131题—分隔回文串昨天端午鸽了塞自己代码的开源仓库:click here 欢迎Star和Fork ????题目描述给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。回文串 是正着读和反着读都一样的字符串。示例 1:输入:s = "aab"输出:[["a",_python 131leetcode
文章浏览阅读2.4k次。计算上表中不同难度的题目答题准确率。selectq.difficult_level,avg(if(q.result="right",1,0)) correct_rate#此处平均值计算结果=正确的题目数量/总答题数量from question_detail qgroup by q.difficult_level_avg(if())