1.【数论】给你N,求不大于N的最大完全平方数。

  1. #include<bits/stdc++.h>
  2. #define FOR(i,a,b) for(int i=(a),_b=(b);i<=_b;i++)
  3. #define DOR(i,a,b) for(int i=(a),_b=(b);i>=_b;i--)
  4. using namespace std;
  5. #define ll long long
  6. ll n;
  7. ll ans;
  8. int main(){
  9. scanf("%lld",&n);
  10. ll a=sqrt(n);//n=100 a=10 n=10 a=3
  11. printf("%lld\n",a*a);
  12. return ;
  13. }

数论

2.

题目描述

多次查询[l,r]范围内的完全平方数个数

定义整数x为完全平方数当且仅当可以找到整数y使得y*y=x

输入描述:

  1. 第一行一个数n表示查询次数
    之后n行每行两个数l,r

输出描述:

  1. 对于每个查询,输出一个数表示答案
示例1

输入

  1. 5
  2. 1 3
  3. 1 4
  4. 2 4
  5. 4 4
  6. 1 1000000000

输出

  1. 1
  2. 2
  3. 1
  4. 1
  5. 31622

备注:

  1. n <= 100000
    0<= l <= r <= 1000000000
    【代码】:
  1. #include<bits/stdc++.h>
  2. #define FOR(i,a,b) for(int i=(a),_b=(b);i<=_b;i++)
  3. #define DOR(i,a,b) for(int i=(a),_b=(b);i>=_b;i--)
  4. #define ll long long
  5. using namespace std;
  6.  
  7. int n;
  8.  
  9. int main(){
  10. cin>>n;
  11. FOR(i,,n){
  12. int L,R;
  13. scanf("%d%d",&L,&R);
  14. int a=sqrt(L),b=sqrt(R);
  15. if(a*a==L)a--;
  16. printf("%d\n",b-a);
  17. }
  18. return ;
  19. }

完全平方数

3.【数论】:

求 1 到 n 的所有数的约数和

暴力方法就是枚举每个数,算出他的约数和即可,这样有点慢。

另一种思路,枚举约数,判断他是谁的约数,并记录(即他的倍数有多少个),在乘以他自己。

n/i求的是n以内,i的倍数有多少个,在乘以i即可。

可以发现,枚举到n/2时,往后的所有数的倍数只有他自己,n/i = 1(i>n/2),这里可以用数学方法算出。

代码:

  1. #include<cstdio>
  2.  
  3. int main()
  4. {
  5. int n,ans = ;
  6. scanf("%d",&n);
  7.  
  8. for (int i=; i<=n; ++i)
  9. {
  10. ans += (n/i)*i;
  11. }
  12.  
  13. printf("%d",ans);
  14.  
  15. return ;
  16. }

【类似】:

题目描述

给个n,求1到n的所有数的约数个数的和~

输入描述:

  1. 第一行一个正整数n

输出描述:

  1. 输出一个整数,表示答案
示例1

输入

  1. 3

输出

  1. 5

说明

  1. 样例解释:
    11个约数1
    22个约数1,2
    32个约数1,3

备注:

  1. n <= 100000000
    【代码】:
  1. #include<cstdio>
  2. using namespace std;
  3. typedef long long LL;
  4. int main ()
  5. {
  6. int n;
  7. LL ans=;
  8. scanf("%d",&n);
  9. for(int i=;i<=n;i++)
  10. ans+=n/i;
  11. printf("%lld\n",ans);
  12. return ;
  13. }

NewCode的更多相关文章

  1. newcode网学习笔记(1)

    1.类的内存结构一开始指向的是虚函数表,指向虚函数表的指针为4个字节(32位系统)[类的内存结构最前面的是指向虚函数表的指针] 2.包含标准库文件以及相关命名空间,则系统不允许用户重新定义标准库函数, ...

  2. [NewCode 6] 重建二叉树

    题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7, ...

  3. [NewCode 5] 从尾到头打印链表

    题目描述 输入一个链表,从尾到头打印链表每个节点的值. 题目比较水,一遍就 AC 了,来看代码: /** * struct ListNode { * int val; * struct ListNod ...

  4. [NewCode 4] 替换空格

    题目描述 请实现一个函数,将一个字符串中的空格替换成"%20".例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy. 最直接的方式, ...

  5. newcode wyh的吃鸡(优势队列+BFS)题解

    思路: 要用优势队列,因为有的+2,有的+1,所以队列中的步长是不单调的,所以找到一个答案但不一定最小,所以用优势队列把小的放在队首. 要记录状态,所以开了三维,题目和昨天做的那道小明差不多 vis开 ...

  6. Node.js Express连接mysql完整的登陆注册系统(windows)

    windows学习环境: node 版本: v0.10.35 express版本:4.10.0 mysql版本:5.6.21-log 第一部分:安装node .Express(win8系统 需要&qu ...

  7. Scala Macros - scalamela 1.x,inline-meta annotations

    在上期讨论中我们介绍了Scala Macros,它可以说是工具库编程人员不可或缺的编程手段,可以实现编译器在编译源代码时对源代码进行的修改.扩展和替换,如此可以对用户屏蔽工具库复杂的内部细节,使他们可 ...

  8. 如何开发、调试Hybrid项目-- 入门篇

    前言 随着移动浪潮的兴起,各种APP层出不穷,极速的业务扩展提升了团队对开发效率的要求,这个时候使用IOS&Andriod开发一个APP似乎成本有点过高了,而H5的低成本.高效率.跨平台等特性 ...

  9. 彩票号码OC呈现

    +(NSArray*)splitCode:(NSString*)code backzoneIndex:(NSInteger*)outIndex { /* 01 0102|0304 0102030405 ...

随机推荐

  1. Kali 中文家目录改英文目录

    中文版Kali装好之后,家目录会中文显示,不便操作 root@kali:~# ls -l drwxr-xr-x root root .0K 7月 : 公共 drwxr-xr-x root root . ...

  2. 2 Model层-模型成员

    1 类的属性 objects:是Manager类型的对象,用于与数据库进行交互 当定义模型类时没有指定管理器,则Django会为模型类提供一个名为objects的管理器 支持明确指定模型类的管理器 c ...

  3. 《Scrum实战》第4次课【全职的Scrum Master】作业汇总

    1组: 孟帅 http://www.cnblogs.com/mengshuai1982/p/7375008.html 3组: 张亚辉 http://www.jianshu.com/p/df9eee08 ...

  4. Core Java的那点事儿之ArrayList

    Core Java的那点事儿之ArrayList 万丈高楼平地起,Java基础要拿起.今天就从我看的Core Java里找了些小基础点来分享一下. 首先隆重介绍一下专业级龙套演员---Employee ...

  5. 【Minimum Path Sum】cpp

    题目: Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right w ...

  6. leetcode 【 Reverse Nodes in k-Group 】 python 实现

    原题: Given a linked list, reverse the nodes of a linked list k at a time and return its modified list ...

  7. leetcode 【Search a 2D Matrix 】python 实现

    题目: Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the f ...

  8. leetcode 【 Convert Sorted List to Binary Search Tree 】python 实现

    题目: Given a singly linked list where elements are sorted in ascending order, convert it to a height ...

  9. Python基础-week03 集合 , 文件操作 和 函数详解

    一.集合及其运算 1.集合的概念 集合是一个无序的,不重复的数据组合,它的主要作用如下 *去重,把一个列表变成集合,就自动去重了 *关系测试,测试两组数据之前的交集.并集.差集.子集.父级.对称差集, ...

  10. Linux 必要软件的安装与配置

    主要是记录一下,免得下次重装系统后又到处搜索.. 一.必要软件的安装 JDK 下载 tar.gz:http://www.oracle.com/technetwork/java/javase/downl ...