찾다
백엔드 개발C++숫자를 4로 나누기 위해 삭제해야 하는 최소 자릿수
숫자를 4로 나누기 위해 삭제해야 하는 최소 자릿수Sep 15, 2023 pm 01:49 PM
나눌 수 있는삭제수학 연산

숫자를 4로 나누기 위해 삭제해야 하는 최소 자릿수

이 기사에서는 흥미로운 계산 문제인 "4로 나눌 수 있는 숫자를 만들기 위해 제거해야 하는 최소 자릿수"를 살펴보겠습니다. 이 질문은 코딩대회나 알고리즘 기반 면접에서 흔히 나오는 질문으로, 문제 해결 능력을 향상시키는 데 탁월한 연습이 됩니다.

먼저 문제 설명을 이해해 보겠습니다. 숫자가 있고 우리의 임무는 나머지 숫자가 4로 나누어질 수 있도록 최소 자릿수를 제거하는 것입니다.

개념적 이해

문제는 정수론 분야에 있습니다. 이해해야 할 중요한 사실은 숫자의 마지막 두 자리가 4로 나누어지는 경우에만 숫자가 4로 나누어진다는 것입니다. 이 사실은 우리 문제를 해결하는 데 매우 중요합니다.

알고리즘 설명

이 문제를 해결하는 알고리즘에는 다음 단계가 포함됩니다. -

  • 숫자를 문자열로 변환하세요.

  • 문자열 끝부터 시작하여 마지막 두 문자로 구성된 숫자가 4로 나누어지는지 확인하세요.

  • 그렇다면 삭제된 자릿수를 반환하세요. 그렇지 않은 경우 마지막 문자를 제거하고 개수를 늘립니다.

  • 숫자가 4로 나누어지거나 한 자리만 남을 때까지 이 작업을 반복하세요.

이것은 알고리즘의 C++ 구현입니다. -

으아악

출력

으아악

minRemovals 함수에서는 카운터 카운트를 0으로 초기화하여 제거된 비트 수를 추적합니다. 그런 다음 숫자(문자열)의 끝부터 반복하여 마지막 두 자리가 4로 나누어지는 숫자를 형성하는지 확인합니다. 그렇다면 개수를 반환하고, 그렇지 않으면 개수를 반환합니다. 그렇지 않은 경우 개수를 늘리고 다음 반복을 계속합니다.

main 함수는 입력 숫자를 정의하고 숫자가 4로 나누어질 수 있도록 제거할 최소 자릿수를 인쇄하는 프로그램의 진입점 역할을 합니다.

테스트 케이스 예시

번호 1351을 예로 들어보겠습니다. 마지막 두 자리(51)를 살펴보면 4로 나누어 떨어지지 않는다는 것을 알 수 있습니다. 따라서 마지막 숫자 (1)을 제거하고 숫자 135를 얻습니다. 다시 확인해 보니 마지막 두 자리(35)가 여전히 4로 나누어지지 않는 것을 알 수 있습니다. 따라서 마지막 숫자(5)를 제거하고 숫자 13을 남겨둡니다. 마지막 두 자리(13)는 4로 나누어지지 않으므로 마지막 자리(3)를 삭제합니다. 이제 4로 나누어지지 않는 숫자 1만 남았지만 더 이상 숫자를 제거할 수는 없습니다. 따라서 제거해야 할 최소 자릿수는 3입니다.

시간과 공간의 복잡성

이 알고리즘의 시간 복잡도는 O(n)입니다. 여기서 n은 숫자의 자릿수입니다. 알고리즘에서 추가 데이터 구조를 사용하지 않으므로 공간 복잡도는 O(1)입니다.

결론

이 글에서는 일반적인 컴퓨팅 문제, 즉 숫자를 4로 나누기 위해 제거해야 하는 최소 자릿수를 결정하는 문제를 살펴보겠습니다. 우리는 정수론의 주요 통찰력을 사용하여 간결한 C++ 솔루션을 개발했습니다.

위 내용은 숫자를 4로 나누기 위해 삭제해야 하는 최소 자릿수의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 tutorialspoint에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
从 Windows 10/11 中删除用户帐户的 5大方法 [2023]从 Windows 10/11 中删除用户帐户的 5大方法 [2023]Jun 27, 2023 am 08:34 AM

您的WindowsPC上有多个过时的帐户?或者,由于某些错误,您是否在从系统中删除这些帐户时陷入困境?无论出于何种原因,您都应该尽快从计算机中删除那些未使用的用户帐户。这样,您将节省大量空间并修复系统中可能的漏洞点。在本文中,我们通过详细步骤详细阐述了多种用户帐户删除方法。方法1–使用设置这是从系统中删除任何帐户的标准方法。步骤1–按Win+I键应打开“设置”窗口。步骤2–转到“帐户”。第3步–找到“其他用户”将其打开。第4步–您将在屏幕右侧找到所有帐户。步骤5–只需在那里扩展帐户即可。在帐户和

windows7系统如何删除administrator账户的详细教程windows7系统如何删除administrator账户的详细教程Jul 11, 2023 pm 10:09 PM

windows7系统如何删除administrator账户呢?很多用户的电脑当中都有多个administrator账户,不过有些账户是使用不到的,所以我们可以删除那些没有必要的管理员账户,那么win7系统如何删除administrator账户呢?今天为大家分享win7系统删除administrator账户的方法。感兴趣的小伙伴们快来看看吧!1、首先,右键点击桌面上的“计算机”图标,菜单栏选择“管理”。2、在计算机管理界面中,依次展开“系统工具——>本地用户——>用户”选项。3、然后在

怎么彻底删除快应用怎么彻底删除快应用May 31, 2023 am 09:48 AM

彻底删除快应用的方法:1、打开手机设置界面,点击打开“应用设置”;2、在应用设置界面,选择“应用管理”点击打开;3、进入应用管理界面,界面选择“快应用服务框架”点击打开;4、进入快应用服务框架界面,选择“卸载更新”选项并打开;5、界面显示窗口点击“确定”即可彻底删除快应用。

使用LinkedList类的removeLast()方法删除链表中的最后一个元素使用LinkedList类的removeLast()方法删除链表中的最后一个元素Jul 24, 2023 pm 05:13 PM

使用LinkedList类的removeLast()方法删除链表中的最后一个元素LinkedList是Java集合框架中常见的一种数据结构,它以双向链表的形式存储元素。通过LinkedList类提供的方法,我们可以方便地对链表进行操作,例如添加、删除和修改元素。在某些场景下,我们可能需要删除链表中的最后一个元素。LinkedList类提供了removeLas

PHP函数介绍—unlink(): 删除文件PHP函数介绍—unlink(): 删除文件Jul 25, 2023 pm 10:19 PM

PHP函数介绍—unlink():删除文件概述:在PHP中,unlink()是一个删除文件的函数。它可以帮助我们在代码中删除指定路径下的文件。语法:unlink(string$filename[,resource$context]):bool参数:filename:必需,要删除的文件路径,可以是相对路径或绝对路径。context:可

Win7系统删除多余的本地连接2Win7系统删除多余的本地连接2Jul 19, 2023 pm 06:21 PM

在查看Win7系统的计算机网络连接时,有时会发现除了本地连接外,还有一个本地连接2。了解后,我们知道这是一个多余的网卡本地连接地址。由于本地连接2的存在,有时本地连接无法连接,因此无法上网。我们如何删除多余的本地连接2?Win7系统删除多余的本地连接2。1.点击开始菜单,搜索运行按下回车键或直接按Windows键(窗口)+R键,打开运行对话框;2.在运行对话框中输入regedit,并按确定键;3.在注册表编辑器中,展开到HKEY_LOCAL_MCHINE\SYSTEM\Curentcontrol

文件不会在 Windows 11 上删除?强制擦除它们的4种方法文件不会在 Windows 11 上删除?强制擦除它们的4种方法Jul 07, 2023 pm 12:21 PM

许多Windows11用户抱怨由于某种原因无法从他们的PC中删除。这可能很烦人,因为它会阻止用户释放内存或删除不需要的文件。但是,我们将讨论为什么文件不会在Windows11上删除以及如何修复它。另外,您可能对我们的文章感兴趣,如果文件资源管理器删除的文件仍显示在您的计算机上,该怎么办。为什么我的电脑不允许我删除文件?如果您不是文件所有者或您的用户帐户没有适当的访问权限,则可能会发生这种情况。该文件可能正被另一个程序或进程使用,从而阻止其被删除。操作系统或第三方程序可能会锁定文件或文件夹。如果计

如何通过PHP ZipArchive实现对压缩包中文件的删除操作?如何通过PHP ZipArchive实现对压缩包中文件的删除操作?Jul 21, 2023 pm 07:29 PM

如何通过PHPZipArchive实现对压缩包中文件的删除操作?概述:ZipArchive是PHP中用于创建和读取ZIP压缩文件的类。除了创建和读取,ZipArchive还提供了其他一些操作,例如删除、重命名、复制和解压缩等。本文将重点介绍如何使用ZipArchive类来删除压缩包中的文件。步骤:在进行删除操作之前,我们需要先打开压缩包并检查是否存在目标文

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

안전한 시험 브라우저

안전한 시험 브라우저

안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전