返回顶部
首页 > 资讯 > 前端开发 > node.js >什么是核心代码模式与ACM模式
  • 880
分享到

什么是核心代码模式与ACM模式

2024-04-02 19:04:59 880人浏览 泡泡鱼
摘要

本篇内容主要讲解“什么是核心代码模式与ACM模式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“什么是核心代码模式与ACM模式”吧!什么是ACM输入模式呢?就是自

本篇内容主要讲解“什么是核心代码模式与ACM模式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“什么是核心代码模式与ACM模式”吧!

什么是ACM输入模式呢?就是自己构造输入数据格式,把要需要处理的容器填充好,OJ不会给你任何代码,包括include哪些函数都要自己写,最后也要自己控制返回数据的格式。

而力扣上是核心代码模式,就是把要处理的数据都已经放入容器里,可以直接写逻辑,例如这样:

class Solution { public:     int minimumTotal(vector<vector<int>>& triangle) {      } };

如果大家从一开始学习算法就一直在力扣上的话,突然切到牛客网上的ACM模式会很不适应。

因为我上学的时候就搞ACM,在POJ(北大的在线判题系统)和ZOJ(浙大的在线判题系统)上刷过6、7百道题目了,对这种ACM模式就很熟悉。

接下来我给大家讲一下ACM模式应该如何写。

这里我拿牛客上 腾讯2020校园招聘-后台 的面试题目来举一个例子,本题我不讲解题思路,只是拿本题为例讲解ACM输入输出格式。

题目描述:

由于业绩优秀,公司给小Q放了 n  天的假,身为工作狂的小Q打算在在假期中工作、锻炼或者休息。他有个奇怪的习惯:不会连续两天工作或锻炼。只有当公司营业时,小Q才能去工作,只有当健身房营业时,小Q才能去健身,小Q一天只能干一件事。给出假期中公司,健身房的营业情况,求小Q最少需要休息几天。

输入描述:

第一行一个整数 表示放假天数

第二行 n 个数 每个数为0或1,第 i 个数表示公司在第 i 天是否营业

第三行 n 个数 每个数为0或1,第 i 个数表示健身房在第 i 天是否营业

(1为营业 0为不营业)

输出描述:

一个整数,表示小Q休息的最少天数

示例一:

输入:

4

1 1 0 0

0 1 1 0

输出:

2

这道题如果要是力扣上的核心代码模式,OJ应该直接给出如下代码:

class Solution { public:     int getDays(vector<int>& work, vector<int>& gym) {         // 处理逻辑     } };

以上代码中我们直接写核心逻辑就行了,work数组,gym数组都是填好的,直接拿来用就行,处理完之后 return 结果就完事了。

那么看看ACM模式我们要怎么写呢。

ACM模式要求写出来的代码是直接可以本地运行的,所以我们需要自己写include哪些库函数,构造输入用例,构造输出用例。

拿本题来说,为了让代码可以运行,需要include这些库函数:

#include<iOStream> #include<vector> using namespace std;

然后开始写主函数,来处理输入用例了,示例一 是一个完整的测试用例,一般我们测了一个用例还要测第二个用例,所以用:while(cin>>n)  来输入数据。

这里输入的n就是天数,得到天数之后,就可以来构造work数组和gym数组了。

此时就已经完成了输入用例构建,然后就是处理逻辑了,最后返回结果。

完整代码如下:

#include<iostream> #include<vector> using namespace std; int main() {     int n;     while (cin >> n) {         vector<int> gym(n);         vector<int> work(n);         for (int i = 0; i < n; i++) cin >> work[i];         for (int i = 0; i < n; i++) cin >> gym[i];         int result = 0;          // 处理逻辑           cout << result << endl;     }     return 0; }

可以看出ACM模式要比核心代码模式多写不少代码,相对来说ACM模式更锻炼代码能力,而核心代码模式是把侧重点完全放在算法逻辑上。

到此,相信大家对“什么是核心代码模式与ACM模式”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: 什么是核心代码模式与ACM模式

本文链接: https://lsjlt.com/news/83351.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 什么是核心代码模式与ACM模式
    本篇内容主要讲解“什么是核心代码模式与ACM模式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“什么是核心代码模式与ACM模式”吧!什么是ACM输入模式呢就是自己...
    99+
    2024-04-02
  • PHP核心的设计模式与实践
    PHP核心的设计模式与实践引言:设计模式是软件开发中常用的解决问题的模板,它们提供了一种可重用的解决方案,可以帮助我们在开发过程中遵循最佳实践和良好的软件设计原则。PHP作为一种广泛应用的编程语言,也有许多常见和有用的设计模式可以在核心开发...
    99+
    2023-11-09
    PHP设计模式 PHP核心 核心实践
  • Java代理模式是什么
    本篇内容介绍了“Java代理模式是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Java 代理模式什么是代理代理是一种设计模式,它的核心...
    99+
    2023-06-19
  • JS与设计模式中什么是策略模式Strategy
    这篇文章给大家介绍JS与设计模式中什么是策略模式Strategy,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一,总体概要1,笔者浅谈策略模式,又叫算法簇模式,就是定义了不同的算法,并且之间可以互相替换,此模式让算法的...
    99+
    2023-06-17
  • SAP BRF+ Interpretation模式与Generation模式的区别是什么
    这期内容当中小编将会给大家带来有关SAP BRF+ Interpretation模式与Generation模式的区别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。在Simulation mode下测...
    99+
    2023-06-04
  • 什么是动态代理模式
    这篇文章主要讲解了“什么是动态代理模式”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“什么是动态代理模式”吧!代理模式代理模式(Proxy Pattern)是...
    99+
    2024-04-02
  • Scala的核心程序模块是什么
    本篇内容介绍了“Scala的核心程序模块是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!读完ManyClients.scala之后,基本...
    99+
    2023-06-17
  • 数据库的共享模式与专有模式是什么
    这篇文章主要介绍“数据库的共享模式与专有模式是什么”,在日常操作中,相信很多人在数据库的共享模式与专有模式是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”数据库的共享模式...
    99+
    2024-04-02
  • 什么是js模板模式
    本篇内容主要讲解“什么是js模板模式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“什么是js模板模式”吧!什么是模板模式?模板模式是抽象父类定义了子类需要重写的...
    99+
    2024-04-02
  • Node中的文件模块和核心模块是什么
    本篇内容介绍了“Node中的文件模块和核心模块是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!文件模块...
    99+
    2024-04-02
  • 消息队列RabbitMQ核心:简单(Hello World)模式、队列(Work Queues)模式、发布确认模式
    文章目录 一、简单模式(Hello World)代码实现 二、队列模式(Work Queues)轮训分发消息代码实现 消息应答概述 RabbitMQ持久化不公平分发 三、发布确认模式原理概述发布确认策略单个确认...
    99+
    2023-08-23
    java-rabbitmq rabbitmq java
  • PHP中的代理模式是什么
    本篇内容介绍了“PHP中的代理模式是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!代理人这个职业在中国有另外一个称呼,房产经济人、保险经...
    99+
    2023-06-20
  • java代理模式是什么意思
    本篇内容介绍了“java代理模式是什么意思”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!目录什么是代理举个栗子什么是代理模式实现代理的方式静...
    99+
    2023-06-20
  • 设计模式之什么是工厂模式
    本篇内容主要讲解“设计模式之什么是工厂模式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“设计模式之什么是工厂模式”吧! 01 简单工厂方法简单工厂方法...
    99+
    2024-04-02
  • 什么是Mvvm模式
    本篇内容介绍了“什么是Mvvm模式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!0x01 MVV...
    99+
    2024-04-02
  • 什么是mvc模式
    这篇文章主要讲解了“什么是mvc模式”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“什么是mvc模式”吧!分析:Model 模型(完成业务逻辑:由javaBe...
    99+
    2024-04-02
  • win8怎么禁用多核心处理器核心强制在单核模式下运行
      1、使用键盘快捷键“Win+R”调出运行对话框,输入“msconfig”后点击确定按钮。如下图所示:   2、在弹出的系统配置对话框,点击“...
    99+
    2022-06-04
    多核 处理器 核心
  • Java单例模式与破坏单例模式的概念是什么
    本文小编为大家详细介绍“Java单例模式与破坏单例模式的概念是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java单例模式与破坏单例模式的概念是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。什么是单例...
    99+
    2023-07-05
  • Java中server模式与client模式有什么区别
    这篇文章给大家介绍Java中server模式与client模式有什么区别,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。JVM client模式和Server模式区别JVM Server模式与client模式启动,最主要...
    99+
    2023-05-30
    java server模式 client模式
  • C++设计模式中的桥模式是什么
    这篇文章主要介绍了C++设计模式中的桥模式是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。单一职责模式:在软件组件的设计中,如果责任划分的不清晰,使用继承得到的结果往往是...
    99+
    2023-06-29
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作