554. 砖墙/ 201. 数字范围按位与

554. 砖墙

  • 相关标签 : 哈希表
/*
[[1,2,2,1], | 1, 3, 5 6
[3,1,2], | 3, 4, 6
[1,3,2], | 1 ,4 ,6
[2,4],  | 2, 6
[3,1,2], | ,3 ,4,6
[1,3,1,1]] | 1,4 ,5,6

hm [1 ,2  3  4  5  | 6]
    3  1  3  4  2  | 6
这题简直不要脸了 
首先不是方形 rectangular 是矩形 。 硬是翻译成方形


*/

#define BUFSIZE 100000
int leastBricks(int** wall, int wallSize, int* wallColSize){
    
    
    int hm[BUFSIZE] = {0};
    int temp;
    for (int i = 0; i < wallSize; i++) {
        temp = 0;
        for (int j = 0; j < wallColSize[i] - 1; j++) { // -1 是 不要把 右边界算进去
            temp += wall[i][j];
            printf("%d ", temp);
            hm[temp]++;
        }
        
        printf("\n");
    }
    
    int max = 0;
    for (int i = 1; i < BUFSIZE; i++) { // 从 1 开始 就把 左边界排除了
        // printf("%d ", hm[i]);
        max = (hm[i] > max) ? hm[i] : max;
    }
    // printf("\n");
    
    return wallSize - max;

}

201. 数字范围按位与

  • 相关标签: 位运算


/*

显然暴力肯定不行 8256 / 8266 个通过测试用例 醉了

0 1   2^0 
2 3   2^1
4 7   2^2
8 15   2^3
16 31    2^4 ~ 2^5-1

    int hm[32] = {1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536, 131072, 262144, 524288, 1048576, 2097152, 4194304, 8388608, 16777216, 33554432, 67108864, 134217728, 268435456, 536870912, 1073741824, 2147483648};
    
    
    
    看一下 m 和 N  是 2^? 
    
*/





// int rangeBitwiseAnd(int m, int n){
//     int res = 0xffffffff;
//     for (int i = m ; i <= n; i++) {
//         res &= i;
//     }
//     return res;
// }



#define BUFLEN 32 // 2147483647 == 2^32- 1
int rangeBitwiseAnd(int m, int n){
    int res = 0xffffffff;
    if (m == n) { // 自己 与 自己 还是自己 
        return m;
    }
    if ((int)log2(m) !=  (int)log2(n)) { // 不在一个区域内 直接是0 
        return 0;
    } else { // 在一个区域内
        for (long i = m; i <= n; i++) { // long  可能会超
            res &= i;
        }
        return res;
    }

}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • --- layout: post title: "如果有人问你关系型数据库的原理,叫他看这篇文章(转)" date...
    蓝坠星阅读 4,292评论 0 3
  • 区块链系统的核心之二-加密技术 加密技术主要是用来解决区块链系统记录的数据的所有权问题。 1哈希算法 1)...
    yrm23阅读 5,702评论 0 4
  • 一.概念 哈希表就是一种以 键-值(key-indexed) 存储数据的结构,我们只要输入待查找的值即key,即可...
    lfp901020阅读 8,153评论 0 2
  • 新春,过眼疾;长寿,人命短。枯木叶落地,日逢花香时。铁骨古篆写隶意,太古法书入草云。一写枯荣一写泪,丹心傲笔...
    王昭之阅读 3,089评论 0 0
  • 青春已不在 似大江流水一去不复返 恍惚之间 留下岁月镌刻的印花 已不是当年 提酒对瓶一口吹 谈天论地说未来 不知忧...
    车菊子阅读 1,684评论 0 3

友情链接更多精彩内容