开发者社区> 问答> 正文

long类型和字符串类型有啥区别?

本问题来自阿里云开发者社区的【11大垂直技术领域开发者社群】。https://developer.aliyun.com/article/706511 点击链接欢迎加入感兴趣的技术领域群。

展开
收起
初商 2019-09-12 10:17:53 1453 0
1 条回答
写回答
取消 提交回答
  • 输入

       每一行包含一个uid,遇到0时认为输入结束。

       输入共包含N+1行,可认为是无序的。

    输出

       一个数字:去重后uid的数量M。

    样例输入

    12933

    111111

    59220

    69433

    59220

    0

     

     

    样例输出

    4

     

    数据范围

    0<uid<2^63

    对于30%的数据,0<N<100,000,0<M<100,000

    对于100%的数据,0<N<1000,000,0<M<800,000

    若使用string会存在超时的情况,一个字符是一个字节,占据空间更大

    unsigned   int   0~4294967295   int   -2147483648~2147483647 unsigned long 0~4294967295 long   -2147483648~2147483647 long long的最大值:9223372036854775807 long long的最小值:-9223372036854775808 unsigned long long的最大值:1844674407370955161

    (long long占据64bit)

    __int64的最大值:9223372036854775807 __int64的最小值:-9223372036854775808 unsigned __int64的最大值:18446744073709551615

    代码如下:

    #include #include <unordered_set> #include #include

    using namespace std; int main() { long long num, res = 0; unordered_set dic; while (cin >> num) { if (num == 0) break; //if an element with a value equivalent to k is found, or zero otherwise. if (dic.count(num) == 0) { res++; dic.insert(num); } } cout << res << endl; return 0; }

    ————————————————

    版权声明:本文为CSDN博主「牛奶蜜糖」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/gp2299/article/details/70237114

    2019-09-12 10:40:47
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载