待修改 nyoj 412

测试好多数据都正确,一直wrong ans

仔细思考

#include<iostream>
#include<math.h>
//x&-x 为x的二进制中最低位1的权值 列: 110010为 2  11100为4 ,所以 log2(4)表示最低位1在第2位
using namespace std;
int lowbit(int n)
{
    return log(n&-n)/log(2);

}
int main()
{
    int n;
    while(cin>>n)
    {
        int pos1=lowbit(n);

        int n2=lowbit(n+n&-n);
        //cout<<"hello"<<pos1<<n2<<endl;
        int ne=n+(n&-n);

        int count=n2-pos1-1;
        int a=1;
        for(int i=0;i<count;i++)
        {
            ne+=a;
            a=a<<1;

        }
        cout<<ne<<endl;

    }

return 0;
}

待修改 nyoj 412

时间: 2024-08-19 01:55:41

待修改 nyoj 412的相关文章

【STL】NYOJ 412 Same binary weight (bitset)

题目链接:http://acm.nyist.edu.cn/JudgeOnline/problem.php?pid=412 Same binary weight 时间限制:300 ms  |  内存限制:65535 KB 难度:3 描述  The binary weight of a positive  integer is the number of 1's in its binary representation.for example,the decmial number 1 has a b

【待修改】nyoj 38 最小生成树

package nyoj; import java.util.Scanner; public class Main { public static void main(String args[]) { //System.out.println(Integer.MAX_VALUE); Scanner scn=new Scanner(System.in); int len=scn.nextInt(); while(len-->0) { int v=scn.nextInt(); int e=scn.n

修改DailyRollingFileAppender类及其父类源码,解决以日期作为日志文件名时,当天的文件没有日期后缀

题记------学习别人的精髓,并加以总结,消化吸收,这就是提高!!!  DailyRollingFileAppender生成的文件是不带时间戳的,必须在某个时间点后,才对原来文件加上时间戳进行重命名,这样就有很大的问题,当天的日志,没有时间戳,而且如果在log4j.properties配置文件路径采用log4j.appender.dailyFile.File=E:/logs/log_或者log4j.appender.dailyFile.File=${webapp.root}/WEB-INF/l

Android之framework修改底部导航栏NavigationBar动态显示和隐藏

大家都知道,Android从3.0版本开始就加入了NavigationBar,主要是为那些没有实体按键的设备提供虚拟按键,但是,它始终固定在底部,占用48dp的像素高度,尽管从android 4.4开始可以全透明,使用这一部分像素,但三个按钮始终悬浮在屏幕上,这对于有强迫症的朋友来说是无法忍受的.因此,本文的目的就是修改framework部分代码,可以动态隐藏和显示NavigationBar,同时又尽量不影响系统的正常. 主要思路: 在NavigationBar的布局左部加入一个Button(在

UVa 10012 有多大 没AC,待修改

题意:给出一些圆的半径,把所有圆放到一个矩形里,要求所有圆都必须与矩形的最下边相切,求矩形的最小长度. 本来写得很快,以为是一道水题,结果有太多情况没考虑..我是按照最左圆的半径加上每两相切圆的圆心间水平距离再加上最右圆的半径写的,有太多情况没考虑.一会补上一个,缝缝补补的,现在都有些晕了,现在还遗漏的情况是,我只考虑了第二个圆比第一个圆能到更左,以及倒数第二个圆比倒数第一个圆能到更右,但是第三个圆或第四个圆也可能比它左边的圆更能到达左边的,右边类似..这就像,只补上了i-2号圆与i号圆相切,而

飞行棋2.0--输完姓名后全自动,可修改为人机交互模式

1 // 2 // main.m 3 4 #import <Foundation/Foundation.h> 5 #import "GameController.h" 6 int main(int argc, const char * argv[]) 7 { 8 GameController *ctl = [GameController new]; 9 [ctl startGame]; 10 11 // GameMap *map = [GameMap new]; 12 //

插件实例修改2

这个是根据前面一篇项目作出修改,那个增加的页面都是列表页面 配置文件 1 <?xml version="1.0" encoding="UTF-8"?> 2 <xp-web> 3 <modules> 4 <!-- 第三方APP服务端 --> 5 <module path="/web/plugins/bs/yygl/bz/extapp" form="" scope="

插件实例修改3

根据我前2篇项目,又做了更新,把3tab页面合成一个页面,主要用到easyui 页面布局 配置文件 1 <?xml version="1.0" encoding="UTF-8"?> 2 <xp-web> 3 <modules> 4 <!-- 第三方APP服务端 --> 5 <module path="/web/plugins/bs/yygl/bz/extapp" form="&quo

插件实例修改

前端框架是easyui框架,后台的框架是我们公司自己写的.做的功能主要是插件修改,使用easyui iframe, tab,datagrid组件 配置文件 <?xml version="1.0" encoding="UTF-8"?> <xp-web> <modules> <!-- 第三方APP服务端 --> <module path="/web/plugins/bs/yygl/bz/extapp&quo