网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
02月21日漏签0天
c语言吧 关注:801,829贴子:4,376,124
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 6回复贴,共1页
<<返回c语言吧
>0< 加载中...

哪位大神来看看为什么说我这个代码内存超限了呢

  • 只看楼主
  • 收藏

  • 回复
  • netbig010
  • 路人
    2
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#include <bits/stdc++.h>
using namespace std;
string s="";
int n,di[4]={0,1,0,-1},dj[4]={1,0,-1,0},b[505][505];
char a[505][505];
void ds1()
{
int x=1,y=1,d=1;
for (int i=1;i<=n*n;i++)
{
s=s+a[x][y];
x-=d;
y+=d;
if (x>n)
{
x=n;
y+=2;
d*=-1;
}
if (y>n)
{
y=n;
x+=2;
d*=-1;
}
if (x<1)
{
x=1;
d*=-1;
}
if (y<1)
{
y=1;
d*=-1;
}
}
}
void ds2()
{
int x=1,y=1,tx,ty,m=0;
b[x][n+1]=-1;
b[n+1][n]=-1;
b[n][0]=-1;
for (int i=1;i<=n*n;i++)
{
a[x][y]=s[i-1];
b[x][y]=i;
tx=x+di[m];
ty=y+dj[m];
if (b[tx][ty]!=0) m++;
if (m==4) m=0;
x+=di[m];
y+=dj[m];
}
}
int main()
{
cin>>n;
for (int i=1;i<=n;i++)
{
for (int j=1;j<=n;j++)
{
cin>>a[i][j];
}
}
ds1();
ds2();
for (int i=1;i<=n;i++)
{
for (int j=1;j<=n;j++)
{
cout<<a[i][j];
}
cout<<endl;
}
return 0;
}


  • netbig010
  • 路人
    2
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
输入为
第一行1个正整数n,表示密码初始形式矩阵的大小。
第2-n+1行每行n个字符(字符都是大写字母)表示密码的初始形式。
输出为
n 行每行n个大写字母表示密码的最终形式。


2026-02-21 08:42:43
广告
不感兴趣
开通SVIP免广告
  • netbig010
  • 路人
    2
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
样例输出1
AB
DC
样例输出2
ABEI
KHLF
NPOC
MJGD
样例输出3
THISI
POEMS
DNKIA
OIHTV
OGYRE


  • netbig010
  • 路人
    2
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
样例输入1
2
AB
CD
样例输入2
4
ABCD
EFGH
IJKL
MNOP
样例输入3
5
THSAD
IIVOP
SEOOH
RGETI
YMINK


  • 究极小白
  • 帕秋莉糕
    12
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
没有数据范围,感觉500*500太少了,而且这种题一般是找规律题不是模拟题把


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 6回复贴,共1页
<<返回c语言吧
分享到:
©2026 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示