热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

通过移除单一数字优化数据集

通过删除单个数字检查数字是否可以变成质数原文:https://www . geeksforgeeks . org/check-i

通过删除单个数字

检查数字是否可以变成质数

原文:https://www . geeksforgeeks . org/check-if-number-be-prime-by-delete-个位数/

给定一个整数 N ,任务是检查是否可以通过从 N 中删除任意一个数字来使 N 成为素数。

示例:

输入: N = 610
输出:
说明:
从 610 中删除 0,得到 61,是素数。

输入:N = 68
T3】输出:否

进场:思路是把 N 转换成一根弦。现在对字符串的每个数字进行迭代并从字符串中删除索引 I 处的字符,然后在删除索引 I 处的字符后将字符串转换为整数,现在检查该整数是否为质数,然后返回 true。否则,最后还假。

下面是上述方法的实现:

C++


// C++ implementation to check if a number
// becomes prime by deleting any digit
#include
using namespace std;
// Function to check if N is prime
bool isPrime(int n)
{
    // Corner cases
    if (n <= 1)
        return false;
    if (n <= 3)
        return true;
    // This is checked so that we can skip
    // middle five numbers in below loop
    if (n % 2 == 0 || n % 3 == 0)
        return false;
    for (int i = 5; i * i <= n; i = i + 6)
        if (n % i == 0 || n % (i + 2) == 0)
            return false;
    return true;
}
// Function to delete character at index i
// from given string str
string deleteIth(string str, int i)
{
    // Deletes character at position 4
    str.erase(str.begin() + i);
    return str;
}
// Function to check if a number
// becomes prime by deleting any digit
bool isPrimePossible(int N)
{
    // Converting the number to string
    string s = to_string(N);
    // length of string
    int l = s.length();
    // number should not be
    // of single digit
    if (l < 2)
        return false;
    // Loop to find all numbers
    // after deleting a single digit
    for (int i = 0; i < l ; i++) {
        // Deleting ith character
        // from the string
        string str = deleteIth(s, i);
        // converting string to int
        int num = stoi(str);
        if (isPrime(num))
            return true;
    }
    return false;
}
// Driver Code
int main()
{
    int N = 610;
    isPrimePossible(N) ? cout << "Yes"
                     : cout << "No";
    return 0;
}


Java 语言(一种计算机语言,尤用于创建网站)


// Java implementation to check if a number
// becomes prime by deleting any digit
import java.util.*;
class GFG{
  // Function to check if N is prime
  static boolean isPrime(int n)
  {
    // Corner cases
    if (n <= 1)
      return false;
    if (n <= 3)
      return true;
    // This is checked so that we can skip
    // middle five numbers in below loop
    if (n % 2 == 0 || n % 3 == 0)
      return false;
    for (int i = 5; i * i <= n; i = i + 6)
      if (n % i == 0 || n % (i + 2) == 0)
        return false;
    return true;
  }
  // Function to delete character at index i
  // from given String str
  static String deleteIth(String str, int i)
  {
    // Deletes character at position 4
    str = str.substring(0, i) +
            str.substring(i + 1);
    return str;
  }
  // Function to check if a number
  // becomes prime by deleting any digit
  static boolean isPrimePossible(int N)
  {
    // Converting the number to String
    String s = String.valueOf(N);
    // length of String
    int l = s.length();
    // number should not be
    // of single digit
    if (l < 2)
      return false;
    // Loop to find all numbers
    // after deleting a single digit
    for (int i = 0; i < l; i++)
    {
      // Deleting ith character
      // from the String
      String str = deleteIth(s, i);
      // converting String to int
      int num = Integer.valueOf(str);
      if (isPrime(num))
        return true;
    }
    return false;
  }
  // Driver Code
  public static void main(String[] args)
  {
    int N = 610;
    if (isPrimePossible(N))
      System.out.print("Yes");
    else
      System.out.print("No");
  }
}
// This code is contributed by Rajput-Ji


Python 3


# Python3 implementation to check if a number
# becomes prime by deleting any digit
# Function to check if N is prime
#from builtins import range
def isPrime(n):
    # Corner cases
    if (n <= 1):
        return False;
    if (n <= 3):
        return True;
    # This is checked so that we can skip
    # middle five numbers in below loop
    if (n % 2 == 0 or n % 3 == 0):
        return False;
    for i in range(5, int(n**1/2), 6):
        if (n % i == 0 or n % (i + 2) == 0):
            return False;
    return True;
# Function to delete character at index i
# from given String str
def deleteIth(str, i):
    # Deletes character at position 4
    str = str[0:i] + str[i + 1:];
    return str;
# Function to check if a number
# becomes prime by deleting any digit
def isPrimePossible(N):
    # Converting the number to String
    s = str(N);
    # length of String
    l = len(s);
    # number should not be
    # of single digit
    if (l < 2):
        return False;
    # Loop to find all numbers
    # after deleting a single digit
    for i in range(l):
        # Deleting ith character
        # from the String
        str1 = deleteIth(s, i);
        # converting String to int
        num = int(str1);
        if (isPrime(num)):
            return True;
    return False;
# Driver Code
if __name__ == '__main__':
    N = 610;
    if (isPrimePossible(N)):
        print("Yes");
    else:
        print("No");
# This code is contributed by Rajput-Ji


C


// C# implementation to check if a number
// becomes prime by deleting any digit
using System;
class GFG{
// Function to check if N is prime
static bool isPrime(int n)
{
    // Corner cases
    if (n <= 1)
        return false;
    if (n <= 3)
        return true;
    // This is checked so that we can skip
    // middle five numbers in below loop
    if (n % 2 == 0 || n % 3 == 0)
        return false;
    for(int i = 5; i * i <= n; i = i + 6)
        if (n % i == 0 || n % (i + 2) == 0)
            return false;
    return true;
}
// Function to delete character at index i
// from given String str
static String deleteIth(String str, int i)
{
    // Deletes character at position 4
    str = str.Substring(0, i) +
          str.Substring(i + 1);
    return str;
}
// Function to check if a number
// becomes prime by deleting any digit
static bool isPrimePossible(int N)
{
    // Converting the number to String
    String s = String.Join("", N);
    // length of String
    int l = s.Length;
    // number should not be
    // of single digit
    if (l < 2)
        return false;
    // Loop to find all numbers
    // after deleting a single digit
    for(int i = 0; i
    {
        // Deleting ith character
        // from the String
        String str = deleteIth(s, i);
        // converting String to int
        int num = Int32.Parse(str);
        if (isPrime(num))
            return true;
    }
    return false;
}
// Driver Code
public static void Main(String[] args)
{
    int N = 610;
    if (isPrimePossible(N))
        Console.Write("Yes");
    else
        Console.Write("No");
}
}
// This code is contributed by Rajput-Ji


java 描述语言


<script>
// Javascript implementation to check if a number
// becomes prime by deleting any digit
// Function to check if N is prime
  function isPrime(n)
  {
    // Corner cases
    if (n <= 1)
      return false;
    if (n <= 3)
      return true;
    // This is checked so that we can skip
    // middle five numbers in below loop
    if (n % 2 == 0 || n % 3 == 0)
      return false;
    for (let i = 5; i * i <= n; i = i + 6)
      if (n % i == 0 || n % (i + 2) == 0)
        return false;
    return true;
  }
  // Function to delete character at index i
  // from given String str
  function deleteIth(str, i)
  {
    // Deletes character at position 4
    str = str.substr(0, i) +
            str.substr(i + 1);
    return str;
  }
  // Function to check if a number
  // becomes prime by deleting any digit
 function isPrimePossible(N)
  {
    // Converting the number to String
    let s = N.toString();
    // length of String
    let l = s.length;
    // number should not be
    // of single digit
    if (l < 2)
      return false;
    // Loop to find all numbers
    // after deleting a single digit
    for (let i = 0; i
    {
      // Deleting ith character
      // from the String
      let str = deleteIth(s, i);
      // converting String to let
      let num = parseInt(str);
      if (isPrime(num))
        return true;
    }
    return false;
  }
// Driver Code
    let N = 610;
    if (isPrimePossible(N))
      document.write("Yes");
    else
      document.write("No");
script>

Output

Yes

时间复杂度:O(D)
T5】辅助空间: O(1)


推荐阅读
  • 理解浏览器历史记录(2)hashchange、pushState
    阅读目录1.hashchange2.pushState本文也是一篇基础文章。继上文之后,本打算去研究pushState,偶然在一些信息中发现了锚点变 ... [详细]
  • 深入理解Java SE 8新特性:Lambda表达式与函数式编程
    本文作为‘Java SE 8新特性概览’系列的一部分,将详细探讨Lambda表达式。通过多种示例,我们将展示Lambda表达式的不同应用场景,并解释编译器如何处理这些表达式。 ... [详细]
  • Java 中的十进制样式 getZeroDigit()方法,示例 ... [详细]
  • Requests库的基本使用方法
    本文介绍了Python中Requests库的基础用法,包括如何安装、GET和POST请求的实现、如何处理Cookies和Headers,以及如何解析JSON响应。相比urllib库,Requests库提供了更为简洁高效的接口来处理HTTP请求。 ... [详细]
  • AI炼金术:KNN分类器的构建与应用
    本文介绍了如何使用Python及其相关库(如NumPy、scikit-learn和matplotlib)构建KNN分类器模型。通过详细的数据准备、模型训练及新样本预测的过程,展示KNN算法的实际操作步骤。 ... [详细]
  • 在OpenCV 3.1.0中实现SIFT与SURF特征检测
    本文介绍如何在OpenCV 3.1.0版本中通过Python 2.7环境使用SIFT和SURF算法进行图像特征点检测。由于这些高级功能在OpenCV 3.0.0及更高版本中被移至额外的contrib模块,因此需要特别处理才能正常使用。 ... [详细]
  • 精选10款Python框架助力并行与分布式机器学习
    随着神经网络模型的不断深化和复杂化,训练这些模型变得愈发具有挑战性,不仅需要处理大量的权重,还必须克服内存限制等问题。本文将介绍10款优秀的Python框架,帮助开发者高效地实现分布式和并行化的深度学习模型训练。 ... [详细]
  • Jupyter Notebook多语言环境搭建指南
    本文详细介绍了如何在Linux环境下为Jupyter Notebook配置Python、Python3、R及Go四种编程语言的环境,包括必要的软件安装和配置步骤。 ... [详细]
  • Python中Seaborn库的整体风格配置详解
    本文介绍了Seaborn,这是一个基于Matplotlib的Python数据可视化库,旨在简化统计图形的绘制过程。文章详细探讨了Seaborn的不同主题风格及其配置方法。 ... [详细]
  • Bootstrap Paginator 分页插件详解与应用
    本文深入探讨了Bootstrap Paginator这款流行的JavaScript分页插件,提供了详细的使用指南和示例代码,旨在帮助开发者更好地理解和利用该工具进行高效的数据展示。 ... [详细]
  • 如何在Django框架中实现对象关系映射(ORM)
    本文介绍了Django框架中对象关系映射(ORM)的实现方式,通过ORM,开发者可以通过定义模型类来间接操作数据库表,从而简化数据库操作流程,提高开发效率。 ... [详细]
  • 本文探讨了如何在Python中将具有相同值的元素分组到矩阵中,这是一个在数据分析和处理中常见的需求。 ... [详细]
  • 回顾两年前春节期间的一个个人项目,该项目原本计划参加竞赛,但最终作为练习项目完成。独自完成了从编码到UI设计的全部工作,尽管代码量不大,但仍有一定的参考价值。本文将详细介绍该项目的背景、功能及技术实现。 ... [详细]
  • 深入解析WebP图片格式及其应用
    随着互联网技术的发展,无论是PC端还是移动端,图片数据流量占据了很大比重。尤其在高分辨率屏幕普及的背景下,如何在保证图片质量的同时减少文件大小,成为了亟待解决的问题。本文将详细介绍Google推出的WebP图片格式,探讨其在实际项目中的应用及优化策略。 ... [详细]
  • 流处理中的计数挑战与解决方案
    本文探讨了在流处理中进行计数的各种技术和挑战,并基于作者在2016年圣何塞举行的Hadoop World大会上的演讲进行了深入分析。文章不仅介绍了传统批处理和Lambda架构的局限性,还详细探讨了流处理架构的优势及其在现代大数据应用中的重要作用。 ... [详细]
author-avatar
待续爱情2502861755
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有