NewCode
1.【数论】给你N,求不大于N的最大完全平方数。
- #include<bits/stdc++.h>
- #define FOR(i,a,b) for(int i=(a),_b=(b);i<=_b;i++)
- #define DOR(i,a,b) for(int i=(a),_b=(b);i>=_b;i--)
- using namespace std;
- #define ll long long
- ll n;
- ll ans;
- int main(){
- scanf("%lld",&n);
- ll a=sqrt(n);//n=100 a=10 n=10 a=3
- printf("%lld\n",a*a);
- return ;
- }
数论
2.
题目描述
多次查询[l,r]范围内的完全平方数个数
定义整数x为完全平方数当且仅当可以找到整数y使得y*y=x
输入描述:
- 第一行一个数n表示查询次数
之后n行每行两个数l,r
输出描述:
- 对于每个查询,输出一个数表示答案
输入
- 5
- 1 3
- 1 4
- 2 4
- 4 4
- 1 1000000000
输出
- 1
- 2
- 1
- 1
- 31622
备注:
- n <= 100000
0<= l <= r <= 1000000000
【代码】:
- #include<bits/stdc++.h>
- #define FOR(i,a,b) for(int i=(a),_b=(b);i<=_b;i++)
- #define DOR(i,a,b) for(int i=(a),_b=(b);i>=_b;i--)
- #define ll long long
- using namespace std;
- int n;
- int main(){
- cin>>n;
- FOR(i,,n){
- int L,R;
- scanf("%d%d",&L,&R);
- int a=sqrt(L),b=sqrt(R);
- if(a*a==L)a--;
- printf("%d\n",b-a);
- }
- return ;
- }
完全平方数
3.【数论】:
求 1 到 n 的所有数的约数和
暴力方法就是枚举每个数,算出他的约数和即可,这样有点慢。
另一种思路,枚举约数,判断他是谁的约数,并记录(即他的倍数有多少个),在乘以他自己。
n/i求的是n以内,i的倍数有多少个,在乘以i即可。
可以发现,枚举到n/2时,往后的所有数的倍数只有他自己,n/i = 1(i>n/2),这里可以用数学方法算出。
代码:
- #include<cstdio>
- int main()
- {
- int n,ans = ;
- scanf("%d",&n);
- for (int i=; i<=n; ++i)
- {
- ans += (n/i)*i;
- }
- printf("%d",ans);
- return ;
- }
【类似】:
题目描述
给个n,求1到n的所有数的约数个数的和~
输入描述:
- 第一行一个正整数n
输出描述:
- 输出一个整数,表示答案
输入
- 3
输出
- 5
说明
- 样例解释:
1有1个约数1
2有2个约数1,2
3有2个约数1,3
备注:
- n <= 100000000
【代码】:
- #include<cstdio>
- using namespace std;
- typedef long long LL;
- int main ()
- {
- int n;
- LL ans=;
- scanf("%d",&n);
- for(int i=;i<=n;i++)
- ans+=n/i;
- printf("%lld\n",ans);
- return ;
- }
NewCode的更多相关文章
- newcode网学习笔记(1)
1.类的内存结构一开始指向的是虚函数表,指向虚函数表的指针为4个字节(32位系统)[类的内存结构最前面的是指向虚函数表的指针] 2.包含标准库文件以及相关命名空间,则系统不允许用户重新定义标准库函数, ...
- [NewCode 6] 重建二叉树
题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7, ...
- [NewCode 5] 从尾到头打印链表
题目描述 输入一个链表,从尾到头打印链表每个节点的值. 题目比较水,一遍就 AC 了,来看代码: /** * struct ListNode { * int val; * struct ListNod ...
- [NewCode 4] 替换空格
题目描述 请实现一个函数,将一个字符串中的空格替换成"%20".例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy. 最直接的方式, ...
- newcode wyh的吃鸡(优势队列+BFS)题解
思路: 要用优势队列,因为有的+2,有的+1,所以队列中的步长是不单调的,所以找到一个答案但不一定最小,所以用优势队列把小的放在队首. 要记录状态,所以开了三维,题目和昨天做的那道小明差不多 vis开 ...
- Node.js Express连接mysql完整的登陆注册系统(windows)
windows学习环境: node 版本: v0.10.35 express版本:4.10.0 mysql版本:5.6.21-log 第一部分:安装node .Express(win8系统 需要&qu ...
- Scala Macros - scalamela 1.x,inline-meta annotations
在上期讨论中我们介绍了Scala Macros,它可以说是工具库编程人员不可或缺的编程手段,可以实现编译器在编译源代码时对源代码进行的修改.扩展和替换,如此可以对用户屏蔽工具库复杂的内部细节,使他们可 ...
- 如何开发、调试Hybrid项目-- 入门篇
前言 随着移动浪潮的兴起,各种APP层出不穷,极速的业务扩展提升了团队对开发效率的要求,这个时候使用IOS&Andriod开发一个APP似乎成本有点过高了,而H5的低成本.高效率.跨平台等特性 ...
- 彩票号码OC呈现
+(NSArray*)splitCode:(NSString*)code backzoneIndex:(NSInteger*)outIndex { /* 01 0102|0304 0102030405 ...
随机推荐
- Kali 中文家目录改英文目录
中文版Kali装好之后,家目录会中文显示,不便操作 root@kali:~# ls -l drwxr-xr-x root root .0K 7月 : 公共 drwxr-xr-x root root . ...
- 2 Model层-模型成员
1 类的属性 objects:是Manager类型的对象,用于与数据库进行交互 当定义模型类时没有指定管理器,则Django会为模型类提供一个名为objects的管理器 支持明确指定模型类的管理器 c ...
- 《Scrum实战》第4次课【全职的Scrum Master】作业汇总
1组: 孟帅 http://www.cnblogs.com/mengshuai1982/p/7375008.html 3组: 张亚辉 http://www.jianshu.com/p/df9eee08 ...
- Core Java的那点事儿之ArrayList
Core Java的那点事儿之ArrayList 万丈高楼平地起,Java基础要拿起.今天就从我看的Core Java里找了些小基础点来分享一下. 首先隆重介绍一下专业级龙套演员---Employee ...
- 【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 ...
- 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 ...
- 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 ...
- 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 ...
- Python基础-week03 集合 , 文件操作 和 函数详解
一.集合及其运算 1.集合的概念 集合是一个无序的,不重复的数据组合,它的主要作用如下 *去重,把一个列表变成集合,就自动去重了 *关系测试,测试两组数据之前的交集.并集.差集.子集.父级.对称差集, ...
- Linux 必要软件的安装与配置
主要是记录一下,免得下次重装系统后又到处搜索.. 一.必要软件的安装 JDK 下载 tar.gz:http://www.oracle.com/technetwork/java/javase/downl ...