E. 蚂蚁和斐波那契
单点时限: 1.0 sec
内存限制: 512 MB
聪明的小蚂蚁最近学习了斐波那契数列,但是它想到了一个问题:
从L到R之间斐波那契数列和的奇偶是什么呢?
其中Fib[1]=1,Fib[2]=1 .
输入格式
单组输入:
每组输入两个以空格隔开的数字 L 和 R
其中 (0<L<=R<1018)
输出格式
从 L 到 R 斐波那契数列和的奇偶,如果是奇数输出 "1" (不带引号) ,否则输出 "0" (不带引号)
样例
1 2
0
被这个题目卡了很久 主要是 当l与R相同时,他们指的是同一个数,这时候不能再求和了,而是直接判断。还有就是关于斐波切数列的一些性质 当第N项可以被3整除时,此时的项对应的数为偶数,还有一个公式就是前n项斐波那契的奇数的个数 2*n/3 要向上取整。 思路1:
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
typedef long long ll;
ll l,r;
int main(){
cin>>l>>r;
ll x,y;
if(l%==){
x=*l/;
} else {
x=*l/+;
}
if(r%==){
y=*r/;
}
else {
y=*r/+;
}
if(l%==){
if((y-x)%==){
cout<<<<endl;
}
else {
cout<<<<endl;
}
}
else {
if((y-x+)%==){
cout<<<<endl;
}
else {
cout<<<<endl;
}
}
return ;
}
思路2根据偶数个数求奇数单位个数:
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
typedef long long ll;
ll l,r;
int main(){
cin>>l>>r;//前n项中偶数的个数就是n/3;
ll x=l/;
ll y= r/;
x=l-x;//前l项中奇数的个数
y=r-y;//前r项中奇数的个数
if(l%==){
if((y-x)%==){
cout<<<<endl;
}
else {
cout<<<<endl;
}
}
else {
if((y-x+)%==){
cout<<<<endl;
}
else {
cout<<<<endl;
}
} return ;
}
E. 蚂蚁和斐波那契的更多相关文章
- C#求斐波那契数列第30项的值(递归和非递归)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- python迭代器实现斐波拉契求值
斐波那契数列(Fibonacci sequence),又称黄金分割数列,也称为"兔子数列":F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n≥2,n∈N*).例 ...
- Ural 1225. Flags 斐波那契DP
1225. Flags Time limit: 1.0 secondMemory limit: 64 MB On the Day of the Flag of Russia a shop-owner ...
- 斐波拉契数列加强版——时间复杂度O(1),空间复杂度O(1)
对于斐波拉契经典问题,我们都非常熟悉,通过递推公式F(n) = F(n - ) + F(n - ),我们可以在线性时间内求出第n项F(n),现在考虑斐波拉契的加强版,我们要求的项数n的范围为int范围 ...
- js中的斐波那契数列法
//斐波那契数列:1,2,3,5,8,13…… //从第3个起的第n个等于前两个之和 //解法1: var n1 = 1,n2 = 2; for(var i=3;i<101;i++){ var ...
- 剑指Offer面试题:8.斐波那契数列
一.题目:斐波那契数列 题目:写一个函数,输入n,求斐波那契(Fibonacci)数列的第n项.斐波那契数列的定义如下: 二.效率很低的解法 很多C/C++/C#/Java语言教科书在讲述递归函数的时 ...
- 算法: 斐波那契数列C/C++实现
斐波那契数列: 1,1,2,3,5,8,13,21,34,.... //求斐波那契数列第n项的值 //1,1,2,3,5,8,13,21,34... //1.递归: //缺点:当n过大时,递归 ...
- 洛谷P1962 斐波那契数列 || P1349 广义斐波那契数列[矩阵乘法]
P1962 斐波那契数列 大家都知道,斐波那契数列是满足如下性质的一个数列: • f(1) = 1 • f(2) = 1 • f(n) = f(n-1) + f(n-2) (n ≥ 2 且 n 为整数 ...
- Python递归及斐波那契数列
递归函数 在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数.举个例子,我们来计算阶乘 n! = 1 * 2 * 3 * ... * n,用函数 fact(n)表示,可 ...
随机推荐
- hdu1181 dfs 字符串首尾可拼接,问是否可寻找到一条字串路径使得首尾分别是‘b’和‘m’,简单的搜索+回溯
#include<bits/stdc++.h> using namespace std; typedef unsigned int ui; typedef long long ll; ty ...
- java基于Hash表和双向链表简单实现LRU Cache
package lru; import java.util.HashMap; public class LRUCache2<K,V> { public final int capacity ...
- 学习Angular1
教程: 参考教程: https://www.runoob.com/angularjs/angularjs-tutorial.html 一.angular的简介AngularJS 是一个 JavaScr ...
- NatApp 外网映射工具
外网映射工具 在做微信开发或者是对接第三方支付接口时,回调接口可能需要外网访问,这时候开发者在本地测试的时候,需要用到外网测试工具.常用的外网测试工具有natapp.ngrok NatApp简介服务器 ...
- Spring中的设计模式:工厂方法模式
导读 工厂方法模式是所有设计模式中比较常用的一种模式,但是真正能搞懂用好的少之又少,Spring底层大量的使用该设计模式来进行封装,以致开发者阅读源代码的时候晕头转向. 文章首发于微信公众号[码猿技术 ...
- what the fuck!(二分查找 / 暴力模拟)
what the fuck! Description 现在有一家公司有nnn个员工(nnn为奇数),他们的工资发放是基本工资+提成,现在这家公司计划再招一批人.要写一篇招聘启事,但是对于这个招聘启事中 ...
- 1015 Reversible Primes (20 分)
A reversible prime in any number system is a prime whose "reverse" in that number system i ...
- node.js代码二
var express = require('express'); var app = express(); var server = require('http').Server(app); var ...
- 微信小程序实现滑动tab切换和点击tab切换并显示相应的数据(附源代码)
这里主要用到了swiper组件和三目运算,直接上代码, 样式只有三个class,简单粗暴,懒的小伙伴们可以直接拿来用,喜欢的点个支持 <view> <view class=" ...
- Linux网络安全篇,认识防火墙(二),Netfilter
一.概述 因为iptables软件利用的是数据包的过滤的机制.所以它会分析数据包的报头数据.根据报头数据与定义的规则来决定该数据是否可以放行.若数据包内容与规则内容相同则放行,否则继续与下一条规则进行 ...