zoukankan      html  css  js  c++  java
  • HDU1407 测试你是否和LTC水平一样高

      题目要求 x^2 + y^2+ z^2 = N,把 1^2 到 100^2 的平方数保留一份,并且标记一份,后面就使用两重循环就可以了。

      代码如下:

    #include <cstring>
    #include <cstdlib>
    #include <cstdio>
    using namespace std;
    
    char hash[100005][2];
    
    int rec[105];
    
    int main()
    {
    	for( int i= 1; i<= 100; ++i )
    	{
    		rec[i]= i* i;
    		hash[rec[i]][0]= 1;
    		hash[rec[i]][1]= i;
    	}
    	int N;
    	while( scanf( "%d", &N )!= EOF )
    	{
    		int flag= 0;
    		for( int i= 1; !flag&& i<= 100; ++i )
    		{
    			for( int j= 1; !flag&& rec[i]+ rec[j]< N; ++j )
    			{
    				int t= N- rec[i]- rec[j];
    				if( hash[t][0] )
    				{
    					printf( "%d %d %d\n", i, j, hash[t][1] );
    					flag= 1;
    				}
    			}
    		}
    	}
    	return 0;
    }
    

      

  • 相关阅读:
    基础DP背包
    哲学思絮01
    Vue使用ElementUI
    Vue-Mock数据
    Vue生命周期
    Vue实战之CURD
    读《间客》有感
    ASP.Net Core网站发布
    Cycling之 标签化
    Vue环境搭建
  • 原文地址:https://www.cnblogs.com/Lyush/p/2139889.html
Copyright © 2011-2022 走看看