help 围墙重建
  • 板块学术版
  • 楼主flame2024
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/12/7 16:00
  • 上次更新2024/12/7 18:12:24
查看原帖
help 围墙重建
1127183
flame2024楼主2024/12/7 16:00

【问题描述】 为了给同学们营造一个良好的学习环境和方便学校的管理,市政府准备对小W就读的学校进行重新规划,占地面积将再次扩大。学校通过领导会议决定,重建学校的围墙。由于学校太大,重建围墙也不是一件小项目,学校决定请专门的建筑公司来建筑。 许多建筑公司从网上得知这个消息后,纷纷来到学校,找到学校领导,对自己公司进行介绍,并希望能接下这个项目。学校领导对很多家公司印象都还不错,难以取舍,为了公平,学校决定通过竞标决定把这个项目交给哪家公司负责。这次竞标是由学校自主决定的,不但要注重建筑实力,而且还要看建筑公司是否有足够的智慧。 学校通过两轮选拔。第一轮,选出建筑实力较强的公司。进入第二轮后,由学校专门负责这个项目的领导进行智力考核。 领导说:为了美观,我们准备建设一面2米高的围墙,围墙建好后,墙外要贴上有图画的瓷砖,当然这就需要瓷砖越大越美观了。目前市面用的最大瓷砖是多大? 公司:宽1米,长2米的 领导:哦,我们就用这种吧,我们学校现需建筑N米长的围墙,如果用这种瓷砖来贴,总共有多少种贴法呢? 公司:…………….(正在计算中……………) 【输入文件】 输入文件wall.in,只有一个整数N(1<N<10000),表示围墙的长度。 【输出文件】 输出文件wall.out,只有一个数,表示如果用宽1米、长2米的瓷砖,贴在高2米,长N米的围墙上,最多有多少种不同的贴法? 【样例输入1】 4 【样例输出1】 5 【数据规模】对于20%的数据,2<N<90;对于60%的数据,2<N ≤1200;对于100%的数据,2< N<10000。

25、螺旋方阵(lxfz.cpp) 试题描述: 输入一个正整数N(1<=N<=20)后,可以得到N*N的数字螺旋方阵,先分别求出该方阵中主对角线与副对角线上数字之和S,P,然后输出S,P的积。 例如,N=5时得到螺旋方阵如下:

其中:主对角线从左上角到右下角,得到的数字之和S=1+17+25+21+9=73,副对角线从右上角到左下角,得到数字之和P=5+19+25+23+13=85. 最后S*P=6205. 输入描述: 输入文件lxfz.in,只有一行,一个正整数N。 输出描述: 输出文件lxfz.out,只有一行,一个正整数(表示主对角线与副对角线上数字之和的积)。 输入样例: 5 输出样例: 6205 我的代码:

#include<bits/stdc++.h>
using namespace std; 
int a[100005],b[100005],c[100005];long n,k;
int main(){
	freopen("wall.in","r",stdin);
freopen("wall.out","w",stdout);
	cin>>n; a[1]=1;
	b[1]=2;
	if(n==1){
		cout<<"1";
		return 0;
	}
	if(n==2){
		cout<<"2";
		return 0;
	}
	for(int i=3;i<=n;i++)
	{
		k = 0;
		for(int j=1;j<=2000;j++)
		{
			c[j]=a[j]+b[j]+k;
			k = c[j]/10;
			c[j]=c[j]%10;
		}
		for(int j=1;j<=20000;j++){a[j]=b[j];b[j]=c[j];}
	}
	k=2000;
	while(c[k]==0&&k>1)k--;
	for(int i = k;i >= 1;i--)cout<<c[i];
	
fclose(stdin);
	fclose(stdout);
	return 0;
}

错哪了???

2024/12/7 16:00
加载中...