APTX博客

  • ACGN
  • Coding
  • DevOps
  • Daily
  • Share
  • Bangumi
APTX Blog
A Moe Blog Set Up By ミズキ
  1. 首页
  2. OI
  3. 正文

C++快读快写模板

2018年8月1日 4753点热度 15人点赞 4条评论

简介

据说比scanf()和printf()还快的读取写入,但我测试性能效果一般(落谷评测)。

快读

inline int read() {
    int X = 0,w = 0; char ch = 0;
    while(!isdigit(ch)) {w |= ch == '-';ch = getchar();}
    while(isdigit(ch)) X = (X << 3) + (X << 1) + (ch ^ 48),ch=getchar();
    return w ? -X : X;
}

快写

inline void write(int x)
{
     if(x < 0) putchar('-'),x = -x;
     if(x > 9) write(x / 10);
     putchar(x % 10 + '0');
}

 

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可
标签: C/C++ C++ 写入 模板 读取
最后更新:2018年8月1日

神楽坂 みずき

萌萌萌,好萌!

点赞
< 上一篇
下一篇 >

文章评论

  • 苏酒灵

    为什么ch=getchar()要写到后面?

    2019年7月2日
    回复
    • 神楽坂 みずき

      @苏酒灵 如果写到前面的话,判断字符是就会被新输入的覆盖,就没法判断新输入的是不是数字了。

      2019年7月11日
      回复
  • 聪明的猪

    负数那一行 -X 改成位运算的 ~(X - 1) 是不是会快一点呢?

    2020年10月27日
    回复
    • 神楽坂 みずき

      @聪明的猪 照理说位运算会稍快一点,但效果不是很明显

      2020年10月31日
      回复
  • razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
    回复 苏酒灵 取消回复

    神楽坂 みずき

    萌萌萌,好萌!

    搜索
    最新 热点 随机
    最新 热点 随机
    上岸 Star Divine 现代前端工程师发展方向不完全指北 站点域名变更通知 私たちの居る理由 《サクラノ詩》VI 章 直哉与蓝对话
    Pornhub风格Logo生成器 #C/C++#邻接表+SPFA单源最短路径算法模板 Linux中zip/unzip命令简略笔记 C/C++ 最短路算法Dijkstra算法 + 堆优化模板 #洛谷#C/C++P1082 同余方程 逆元(欧拉函数)/拓展欧几里得 Lighttpd:配置SSL并强制跳转https配置
    标签聚合
    HTML 日常 C/C++ ST OI C++ 动漫 洛谷
    分类
    • ACGN
    • Coding
    • Daily
    • DevOps
    • OI
    • Share

    COPYRIGHT © 2017-2022 APTX博客. ALL RIGHTS RESERVED.

    Theme Kratos Made By Seaton Jiang