1. 程式人生 > >華為初級——尼科徹斯定理

華為初級——尼科徹斯定理


源程式:

//尼科徹斯定理
#include<iostream>
using namespace std;
int main()
{
	int n;
	cin>>n;
	int m;
	m=n*n*n;
	for(int i=1;i<=m;i=i+2)
	{
		int a[100]={0};	//把n個連續的奇數存在陣列a[]中。
		int sum=0;//n個連續的奇數之和
		for(int j=i,k=1;k<n+1;j=j+2,k++)
		{		
			a[k]=j;
			sum=sum+a[k];
		}
		if(sum==m)
		{
			for(int num=1;num<=n;num++)			
			{
				cout<<a[num];	
				if(num!=n)
					cout<<'+';
			}
			break;
		}
	}
	cout<<endl;
	return 0;
}

執行結果:





總結:這道題目不難吧,但是,我寫的程式都是在主函式裡面實現的,沒有根據描述裡面的自定義函式寫,而且,我覺得自己對於用字串輸出不熟練,不知道怎麼用字串輸出,但是華為oj平臺裡面只要符合它的輸入和輸出,就是對的。並且,我在提交的程式裡面沒有考慮周全,當輸入1時,程式沒有輸出結果,不過,我在後面發現之後,加上了邊界條件i<=m就OK了。今天看了“人人都有好工作”,很好的書,裡面談到說要記錄自己學的東西,要寫出有質量的部落格,差距還很遠,加油。