zoukankan      html  css  js  c++  java
  • Greedy:Graveyard Design(POJ 2100)

                  

                   墓地

      题目大意,给定一个整数,要你找出他的平方和组合

      太简单了。。。。不过一开始我储存平方和想降低时间,后来发现会超内存,直接用时间换空间了,游标卡尺法

      

     1 #include <iostream>
     2 #include <functional>
     3 #include <algorithm>
     4 #define MAX_N 10000001
     5 
     6 using namespace std;
     7 typedef long long LL_INT; 
     8 
     9 static int store[MAX_N][2];//只储存开始和结尾
    10 
    11 void Inivilize(void);
    12 
    13 int main(void)
    14 {
    15     LL_INT n, sum, tmp;
    16     int    s, t, num;
    17 
    18     while (~scanf("%lld", &n))
    19     {
    20         sum = num = 0; s = t = 1;
    21         while (1)
    22         {
    23             while ((tmp = (LL_INT)t*(LL_INT)t) <= n && sum < n)
    24             {
    25                 sum += tmp;
    26                 t++;
    27             }
    28             if (sum == n)
    29             {
    30                 store[num][0] = s; store[num][1] = t;
    31                 num++;
    32             }
    33             if (sum < n)
    34                 break;
    35             sum -= (LL_INT)s*(LL_INT)s; s++;
    36         }
    37         printf("%d
    ", num);
    38         for (int i = 0; i < num; i++)
    39         {
    40             printf("%d ", store[i][1] - store[i][0]);
    41             for (int j = store[i][0]; j < store[i][1]; j++)
    42                 printf("%d ", j);
    43             printf("
    ");
    44         }
    45     }
    46     return EXIT_SUCCESS;
    47 }

      

  • 相关阅读:
    jmeter_分布式测试
    Locust性能测试_百度案例
    tkinter学习笔记_06
    tkinter学习笔记_05
    web前后端交互,nodejs
    Chrome Vue Devtools插件安装和使用
    line-height和height的区别
    网站头部导航
    屏蔽元素默认样式中的边距
    CSS Float(浮动)
  • 原文地址:https://www.cnblogs.com/Philip-Tell-Truth/p/5155131.html
Copyright © 2011-2022 走看看