> 백엔드 개발 > C++ > 주어진 베이스에서 C++의 Pandigital 숫자를 중국어로 번역합니다.

주어진 베이스에서 C++의 Pandigital 숫자를 중국어로 번역합니다.

WBOY
풀어 주다: 2023-08-30 08:01:10
앞으로
1239명이 탐색했습니다.

주어진 베이스에서 C++의 Pandigital 숫자를 중국어로 번역합니다.

0부터 B까지의 모든 숫자를 포함하는 숫자를 그 진수에서 완전 자릿수라고 합니다. 그러나 일부 숫자는 1부터 9까지의 숫자를 가지며 0이 없는 전체 자릿수라고 합니다. 모든 숫자의 예로는 0123456789, 0789564312 등이 있습니다.

이 튜토리얼에서는 숫자와 밑수가 주어지고 −

Input: num = “9651723467380AZ”, base = 10
Output: YES
Explanation: num contains all the digits in the base 10 i.e from 0 to 9, so it is a pandigital number.

Input: num = “130264ABCDE745789”, base = 16
Output: NO
Explanation: num does not contain F(15) which is in the base 16 i.e from 0 to 15, so it is not a pandigital number.
로그인 후 복사

해결책을 찾는 접근 방식

과 같이 숫자가 주어진 밑수에서 완전한 숫자인지 확인해야 하는 문제에 대해 논의할 것입니다. 이 문제에서는 고유한 값을 저장해야 하기 때문에 Set을 사용하고 집합에 각 숫자를 삽입하겠습니다.

  • 문자열을 탐색하면서 한 번에 각 문자를 가져옵니다.

  • 그런 다음 요소가 정수인지 확인하세요. 또는 알파벳입니다.

  • 알파벳인 경우 알파벳 위치에 10을 더해 2자리를 나타냅니다.

  • 값을 세트에 저장합니다.

  • 순회 후 확인 집합의 크기는 밑수와 같습니다.

Example

위 접근 방식에 대한 C++ 코드

 
#include<bits/stdc++.h>
using namespace std;
int main(){
    int base = 10;
    char n[] = "9651723467380AZ";
    // Declaring set to store unique values.
    set<int, greater<int> > s;
    // Traversing through the string.
    for (int i = 0; i < strlen(n); i++){
        // Checking if element is Integer.
        if (n[i] >= &#39;0&#39; && n[i] <= &#39;9&#39;)
           s.insert(n[i]- &#39;0&#39;);
        // Checking if element is alphabet.
        else if (n[i] - &#39;A&#39; <= base - 11)
           s.insert(n[i] - &#39;A&#39; + 10) ;
    }
    // Checking if all the digits are present.
    if(s.size()==base)
       cout<< "YES";
    else
        cout<< "NO";
    return 0;
}
로그인 후 복사

Output

YES
로그인 후 복사

결론

이 튜토리얼에서는 주어진 숫자와 밑수에 대한 문제에 대해 논의했습니다. 숫자가 완전한 숫자인지 확인해야 합니다. 우리는 값을 세트에 삽입하고 카디널리티와 비교하여 크기를 확인하여 이 문제를 해결하는 간단한 방법을 논의했습니다. 우리는 또한 이 문제를 해결하기 위해 C, Java, Python 등과 같은 프로그래밍 언어를 사용하여 수행할 수 있는 C++ 프로그램에 대해서도 논의했습니다. 이 튜토리얼이 도움이 되길 바랍니다.

위 내용은 주어진 베이스에서 C++의 Pandigital 숫자를 중국어로 번역합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿