TA的每日心情 | 开心 2014-6-18 08:29 |
---|
签到天数: 14 天 [LV.3]偶尔看看II
滴水大师
- 积分
- 2345
|
题目
解决代码及点评
- <pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code"></pre><pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code"><pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code"><pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code"><pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code">/************************************************************************/
- /* 84. 十个数字组成完全平方数。
- 把0、1、2、3、4、5、6、7、8、9十个数字分别组成一个一位数,
- 一个二位数,一个三位数和一个四位数,使它们都是完全平方数(其平方根是整数),
- 共有几种方法? 每种方法的结果是什么? (每个数字只允许用一次)
-
-
-
- 转换思路 由小数 向上匹配*/
- /************************************************************************/
- #include<stdio.h>
- #include <stdlib.h>
- bool fillarr(int *arr,int num)
- { if (num==0)
- {
- if (arr[0]==0)
- {
- arr[0]=1;
- }
- else
- return false;
- }
- while(num)
- {
- int temp=num%10;
- if (arr[temp]==0)
- {
- arr[temp]=1;
- }
- else if (arr[temp]==1)
- {
- return false;
- }
- num/=10;
- }
- return true;
- }
- void main()
- {
- //int arr[10]={0};
- for (int i=0;i<4;i++)
- {
- for (int j=4;j<10;j++)
- {
- for (int k=10;k<32;k++)
- {
- for (int l=32;l<100;l++)
- { int arr[10]={0};
- if (fillarr(arr,i*i)&&fillarr(arr,j*j)&&fillarr(arr,k*k)&&fillarr(arr,l*l))
- {
- printf("%5d%5d%5d%5d\n",i*i,j*j,k*k,l*l);
- }
- }
- }
- }
- }
- system("pause");
- }</pre><br><br><br></pre></pre></pre>
|
|