人活着系列之平方数

Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^

题目描述

偶然和必然?命运与意志?生与死?理性与情感?价值与非价值?在“人活着是为什么?”的问题面前都变成无意义了。婚姻?家庭?事业?爱情?这何尝不是一种借口,去诠释活着的另外一种理由,听起来显得堂而皇之一点罢了。所以活着的同时,为什么不做一做平方数?

平方数是指可以写成某个整数的平方的数。例如1,4,9等。现在我们有20个平方数,它们分别是1^2,2^2,3^2,4^2……20^2,我们想知道对于一个整数n,它可以表示成多少种平方数的和,注意每个平方数可以使用无限次。

例如 n = 10,那么

10 = 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1;

10 = 1 + 1 + 1 + 1 + 1 + 1 + 4;

10 = 1 + 1 + 4 + 4;

10 = 1 + 9;

因此整数10可以表示成4种平方数的和。

输入

多组输入,每组输入一行,表示正整数n(1 <= n <= 500)

输出

对于每一组,输出一行,代表整数n可以表示成平方数和的种数。

示例输入

2

10

30

示例输出

1

4

27

开始的时候,没有看懂题意,后来YF说是背包,秒懂,原来是背包啊

#include <bits/stdc++.h>
#define RR freopen("input.txt","r",stdin)
#define WW freopen("ouput.txt","w",stdout) using namespace std;
const int INF=0x3f3f3f3f;
int main()
{
int Arr[20];
int Dp[1000];
for(int i=1;i<=20;i++)
{
Arr[i-1]=i*i;
}
int n;
while(~scanf("%d",&n))
{
memset(Dp,0,sizeof(Dp));
Dp[0]=1;
for(int i=0;i<20;i++)
{
for(int j=Arr[i];j<=n;j++)//完全背包
{
Dp[j]+=Dp[j-Arr[i]]; }
}
printf("%d\n",Dp[n]);
}
return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

最新文章

  1. ios UINaviBar 去除分割线
  2. ubuntu如何以删除文件夹?
  3. Python包的相对导入时出现错误的解决方法
  4. 数据结构之链表、栈和队列 java代码实现
  5. Android星星评分控件RatingBar的使用
  6. 安装Hadoop系列 — 新建MapReduce项目
  7. JS精确到小数点两位
  8. 2.6. Statistical Models, Supervised Learning and Function Approximation
  9. 1.offsetParent,offsetLeft,offsetTop
  10. Grunt构建工具插件篇——之less工具
  11. javaWeb超链接(href)请求-特殊字符处理
  12. Linux环境下安装配置Node.js
  13. C#中equal与==的区别
  14. lvs dr 模型配置详解
  15. Android开发之选项菜单(optinosMenu)
  16. 在vim中安装及配置NERDTree插件
  17. Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener. ...nested exception is java.lang.NoSuchMethodError:
  18. python(40):利用utf-8编码判断中文英文字符
  19. 戴尔PowerEdge R430 机架式服务器 安装ubuntu server 14.04.1 LTS 64 位
  20. MongoDB安全:创建角色(User-Defined Roles)

热门文章

  1. 关于prototype
  2. ngrok外网登录本地Web服务器
  3. Uva 11538 - Chess Queen
  4. 压缩 &amp; 解压缩 命令汇总:tar、zip &amp; unzip、
  5. snmp getTable demo :iftable ipAddresstable
  6. Android自定义ScrollView实现一键置顶功能
  7. paper 61:计算机视觉领域的一些牛人博客,超有实力的研究机构等的网站链接
  8. MySQL增删改查
  9. Java相关内容解析
  10. 【jQuery UI 1.8 The User Interface Library for jQuery】.学习笔记.4.Tabs控件