这道题的题目描述灰常简单,第一眼看以为是一道十分水的题目;

但是!!!(我仔细一看也没有发现这背后隐藏着可怕的真相~)

下面给出题目描述:

给出一个整数x,你可以对x进行两种操作。
1、将x变成4x+3
2、将x变成8x+7
问,最少通过多少次操作,使得x是1000000007的倍数?

没错,就是这么坑!当我仔细读完题目后本还抱有几分希望(也许可以水过)

但是!!!没错我又一次用了“但是”这个词;

当我看到数据范围时我几乎就放弃了,只能用暴力来骗分了,仅仅只水到了50分(也知足了)

【输入格式】

一行,一个整数x(1<=x<=1000000006)。

【输出格式】

一行,表示最少的操作步数。保证答案不超过10^5。
如此多的可能性,使我敢打赌这绝对是一道数学题,而且是我想不到的那种;真是让人感到没有办法。。

而更加令人吃惊的在后面:我以为这道题应该会用到我所不能触及的只是,然而,只是一个十分巨大的脑洞!

没错,学长仅仅只是在黑板(白板?)上写下了两个式子,如下:

##

8( 8x + 7 ) + 7 = 64x + 63;
4( 4( 4x + 3 ) + 3 ) + 3 = 64x + 63;

然后再稍微的推导一下就可以得到:

2( 2x + 1 ) + 1 = 4x + 3;
2( 2( 2x + 1 ) + 1 ) + 1 = 8x + 7;

真是令人感到吃惊!这意味着 当我们运行了两次 8x+7 运算时,就相当于运行了三次 4x+3 运算;

那么这道题目就变的简单了许多,我们可以得到结论:4x+3的运算次数必然不会达到3次以上,因为如果有三次 4x+3 运算便可以用两次 8x+7 运算来代替(题目要求用尽可能少的次数来解);

而为了方便一些,我们便统一的用 2x+1 来代替这两种运算!

1
2
3
4
5
6
while(true)
{
大专栏  天哪!毫无思绪!令人感到恐惧的数学(水题?)(TOWQs)span class="line"> num=(num*2+1)%1000000007;
ans++;
if(num==0) break;
}

这就简单了许多,下面就可以上正解的代码了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include&lt;cstdio&gt;
using namespace std;
long long ans,num;
int ()
{
scanf("&amp;lld",&amp;n);
while(true)
{
num=(num*2+1)%1000000007;
ans++;
if(num==0) break;
}
printf("%lldn",(ans-1)/3+1);
return 0;
}

天哪!毫无思绪!令人感到恐惧的数学(水题?)(TOWQs)的更多相关文章

  1. PPT设计宝典!十招教你做出拿得出手的PPT

    据说上班用 excel 的比 word 的工资高,用 ppt 的比用 excel 的工资高.无论如何,在职场演讲汇报中,PPT 扮演着至关重要的角色. 在本文我们将用 10 个超级技巧来解决糟糕的演示 ...

  2. PPT设计宝典!十招教你做出拿手的PPT

    据说上班用 excel 的比 word 的工资高,用 ppt 的比用 excel 的工资高.无论如何,在职场演讲汇报中,PPT 扮演着至关重要的角色.  在本文我们将用 10 个超级技巧来解决糟糕的演 ...

  3. [转][darkbaby]任天堂传——失落的泰坦王朝(下)

    即使是日本业界人士也对1999年发生的“口袋妖怪所有权风波”知之甚少,实际上这个事件的结局足以改变游戏产业未来数十年的势力图,山内溥凭借着个人的睿智让任天堂再次渡过了命运的暗礁,而另一颗曾经炙手可热的 ...

  4. 写在OI退役后和高中毕业前的一些话

    更新日志: 2017.02.13 开坑 2017.02.13 更新[零][壹] 2017.02.14 更新[贰] 2017.02.26 更新[叁][肆] 2017.03.04 锅多如狗,停更一周 20 ...

  5. VR与AR的发展趋势分析

    概要 你是否想象过与神秘的深海生物近距离接触?你是否梦想过穿戴钢铁侠那样的超先进科技装备成为超级英雄?你又是否幻想过与梦中的女神面对面的交流?这些可能在以前都只能是存在于脑海中的幻想,可是在如今有一项 ...

  6. 【黑金原创教程】【Modelsim】【第五章】仿真就是人生

    声明:本文为黑金动力社区(http://www.heijin.org)原创教程,如需转载请注明出处,谢谢! 黑金动力社区2013年原创教程连载计划: http://www.cnblogs.com/al ...

  7. words2

    餐具:coffee pot 咖啡壶coffee cup 咖啡杯paper towel 纸巾napkin 餐巾table cloth 桌布tea -pot 茶壶tea set 茶具tea tray 茶盘 ...

  8. 为什么很多人坚信“富贵险中求”?

    之家哥 2017-11-15 09:12:31 微信QQ微博 下载APP 摘要 网贷之家小编根据舆情频道的相关数据,精心整理的关于<为什么很多人坚信"富贵险中求"?>的 ...

  9. 使用ASP.NET Core构建RESTful API的技术指南

    译者荐语:利用周末的时间,本人拜读了长沙.NET技术社区翻译的技术标准<微软RESTFul API指南>,打算按照步骤写一个完整的教程,后来无意中看到了这篇文章,与我要写的主题有不少相似之 ...

随机推荐

  1. PHP 5.3 新特性

    1 PHP 5.3中的新特性 1.1 支持命名空间 (Namespace) 毫无疑问,命名空间是PHP5.3所带来的最重要的新特性. 在PHP5.3中,则只需要指定不同的命名空间即可,命名空间的分隔符 ...

  2. [LC] 82. Remove Adjacent Repeated Characters IV

    Repeatedly remove all adjacent, repeated characters in a given string from left to right. No adjacen ...

  3. 吴裕雄--天生自然 JAVA开发学习:抽象类

    public abstract class Employee { private String name; private String address; private int number; pu ...

  4. 14 微服务电商【黑马乐优商城】:day03-springcloud(Hystix,Feign)

    本项目的笔记和资料的Download,请点击这一句话自行获取. day01-springboot(理论篇) :day01-springboot(实践篇) day02-springcloud(理论篇一) ...

  5. MJServer部署

    工具: 1.jdk-8u60-macosx-x64.dmg 2.MjServer.zip 3.eclipse-jee-kepler-SR2-macosx-cocoa-x86_64.tar.gz 4.a ...

  6. Android开发学习3

    学习内容: 1.复选框CheckBox 2.ImageView & 使用第三方库加载网络图片 3.列表视图ListView 4.网格视图GridView 5.ScrollView & ...

  7. spring+mybatis配置多个数据源

    http://www.cnblogs.com/lzrabbit/p/3750803.html

  8. Python_自动化运维

    1. 生成磁盘使用情况的日志文件 #!/usr/bin/env python#!coding=utf-8​import timeimport os​new_time = time.strftime(' ...

  9. Nginx配置使用

    1.黑色标注的得自己写入到nginx.conf文件中 upstream serverlb { server 127.0.0.1:9999; server 127.0.0.1:8888; } serve ...

  10. 利用Python进行图片发送与接收的两种方法---包含客户端和服务器端代码

    第一种方法 opencv.requests.flask 此方法比较耗费时间 600毫秒左右 客户端代码 #coding:utf-8 import cv2 import json import requ ...