접두사는 지정된 문자열의 하위 문자열이며, 0번째 인덱스에서 시작하여 문자열 크기까지입니다. 마찬가지로 접미사는 문자열 크기에 대한 길이 1의 하위 문자열이며 마지막 인덱스에서 끝납니다. 두 개의 문자열이 제공되며 첫 번째 문자열은 두 번째 문자열의 접두사와 접미사를 원하는 만큼 사용하여 어떤 방식으로든 생성되어야 합니다. 주어진 메소드에서 주어진 문자열을 생성할 수 없으면 -1을 반환합니다.
예
으아악 으아악Explanation
의 중국어 번역은Explanation
입니다.접두사 "points"와 접미사 "tutorial"을 사용할 수 있으며 이를 연결하면 첫 번째 문자열을 얻을 수 있습니다. 여기에는 두 개의 부분 문자열만 필요하며 이것이 우리의 대답 또는 출력입니다.
으아악 으아악Explanation
의 중국어 번역은Explanation
입니다.두 번째 문자열의 주어진 접미사 또는 접두사에서 첫 번째 문자열을 가져올 수 없습니다.
방법
이 문제를 해결하기 위해 이미 발생한 인스턴스를 저장하여 해결하는 동적 프로그래밍 개념을 사용하겠습니다.
먼저 두 문자열을 매개변수로 사용하고 정수를 반환하는 함수를 만듭니다.
이 함수에서는 먼저 문자열의 길이를 가져오고 해시 세트와 임시 문자열을 만들어 접두사를 가져옵니다.
두 번째 문자열을 반복하여 모든 접두사를 가져와서 해시 세트에 저장합니다. 마찬가지로 문자열을 뒤에서 앞으로 순회하면 모든 접미사를 가져와서 해시 세트에 저장할 수 있습니다.
그런 다음 동적 프로그래밍의 결과를 저장하는 배열을 만들고 배열의 각 인덱스 위치에 -1을 저장합니다.
중첩된 for 루프를 사용하여 첫 번째 문자열을 청크로 분할하고 해시 맵의 모든 청크를 연결할 수 있는지 찾습니다.
필요한 하위 문자열 수를 줄이기 위해 최선을 다할 것입니다. 이것이 불가능할 경우 -1이 반환됩니다.
예
으아악출력
으아악시간과 공간의 복잡성
위 코드의 시간 복잡도는 우리가 얻는 모든 접미사의 복잡도가 높기 때문에 O(N^2)이지만, 문자열을 반전시키면 시간 복잡도를 줄일 수 있습니다. 또한 문자열을 해시 세트에 저장하여 시간 복잡도를 높이고 동적 프로그래밍을 위한 루프를 중첩합니다.
위 코드의 공간 복잡도는 모든 접미사와 접두사를 해시 맵에 저장하기 때문에 O(N^2)입니다.
결론
이 튜토리얼에서는 주어진 문자열의 접미사와 접두사에서 최소 하위 문자열 수를 찾아 다른 주어진 문자열을 만드는 코드를 구현했습니다. 불가능할 경우 -1을 인쇄합니다. 우리는 요소를 해시 세트에 저장한 다음 시간 및 공간 복잡도가 O(N^2)인 중첩 루프를 사용하여 동적 프로그래밍의 개념을 사용했습니다.
위 내용은 주어진 문자열을 구성하는 데 필요한 접두사와 접미사의 최소 개수의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

php将16进制字符串转为数字的方法:1、使用hexdec()函数,语法“hexdec(十六进制字符串)”;2、使用base_convert()函数,语法“bindec(十六进制字符串, 16, 10)”。

PHP 是一门功能强大的编程语言,广泛应用于 Web 开发领域。其中一个非常常见的情况是需要将字符串转换为小数。这在进行数据处理的时候非常有用。在本文中,我们将介绍如何在 PHP 中将字符串转换为小数。

检测变量是否为字符串的方法:1、利用“%T”格式化标识,语法“fmt.Printf("variable count=%v is of type %T \n", count, count)”;2、利用reflect.TypeOf(),语法“reflect.TypeOf(变量)”;3、利用reflect.ValueOf().Kind()检测;4、使用类型断言,可以对类型进行分组。

php字符串长度不一致的解决办法:1、通过mb_detect_encoding()函数查看字符串的编码方式;2、通过mb_strlen函数查看具体字符长度;3、使用正则表达式“preg_match_all('/[\x{4e00}-\x{9fff}]+/u', $str1, $matches);”剔除非中文字符即可。

删除方法:1、使用TrimSpace()函数去除字符串左右两边的空格,语法“strings.TrimSpace(str)”;2、使用Trim()函数去除字符串左右两边的空格,语法“strings.Trim(str, " ")”;3、使用Replace()函数去除字符串的全部空格,语法“strings.Replace(str, " ", "", -1)”。

在开发PHP应用程序时,有时我们需要去掉字符串前面的某些特定字符或者字符串。在这种情况下,我们需要使用一些PHP函数来实现这一目标。本文将介绍一些PHP函数,帮助您轻松地去掉字符串前面的字符或字符串。

转换方法:1、在转换变量前加上用括号括起来的目标类型“(bool)”或“(boolean)”;2、用boolval()函数,语法“boolval(字符串)”;3、用settype()函数,语法“settype(变量,"boolean")”。

php字符串部分乱码的解决办法:1、使用“mb_substr(strip_tags($str),0,-1,'UTF-8');”截取字符串;2、使用“iconv("UTF-8","GB2312//IGNORE",$data)”转换字符集即可。


핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

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

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

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

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전
