当前位置: 首页 > news >正文

Java快读

如果输入数据总量 ≥ 10^5,则应该考虑使用快读。
尤其是:总整数个数 ≥ 100000,或输入文件大小 ≥ 几 MB
且语言是 Java,因为 Java 的 Scanner 会非常慢,本质上是“正则解析器”,时间复杂度远高于预期。

static class FastScanner {private final InputStream in = System.in;private final byte[] buffer = new byte[1 << 16];private int ptr = 0, len = 0;private int read() throws IOException {if (ptr >= len) {len = in.read(buffer);ptr = 0;if (len == -1) return -1;}return buffer[ptr++];}int nextInt() throws IOException {int c;while ((c = read()) <= ' ') {if (c == -1) return -1;}int sign = 1;if (c == '-') {sign = -1;c = read();}int val = c - '0';while ((c = read()) > ' ') {val = val * 10 + (c - '0');}return val * sign;}
}
http://www.jsqmd.com/news/63247/

相关文章:

  • 软件著作权登记申请-内容及注意事项(单人/多人合作开发)
  • 订单流程服务(OrderProcessor)
  • 软件著作权登记申请-操作流程、内容及注意事项(单人/多人合作开发)
  • 代码随想录Day29_贪心3
  • Webhooks服务(Webhooks.API)
  • 订单服务(Ordering.API)
  • Epipolar Geometry(对极几何)介绍
  • ECA 注意力机制在rol poling 的哪里
  • 购物车服务(Basket.API)
  • eshop前端界面(WebApp)
  • 商品服务(Catalog.API)
  • 商品服务(Catalog.API)
  • 认证和授权服务(Identity.API)
  • 实验5作业
  • 7.订单流程服务(OrderProcessor)
  • 8.支付流程服务(PaymentProcessor)
  • 嵌入式软件之分层设计
  • 第46天(中等题 数据结构)
  • 量化操作
  • 2、用例设计方法
  • 对每个子区域的采样点进行池化操作,池化操作是什么
  • RoI Align / RoI Pool 里的采样点
  • # Linus Torvalds vs. 模糊抽象:代码命名清晰性与认知负荷的工程思维
  • 深度学习、机器学习与强化学习的关系:通俗解析(从基础到细分)
  • # Residuality Theory批判性分析:架构应该被训练而非设计
  • # Python 3.14去GIL革命:性能飞跃25%与Python之父的冷静警告
  • # MVP架构选型指南:停止过度设计,从简单开始
  • UV Python包管理器:解释器与虚拟环境工程实践指南【from deepseek】
  • C++学习备忘:深度解构 C++ 智能指针
  • # 软件危机与复杂性:工程思维的诞生背景