Рубрики

Найдите целые числа, которые не заканчиваются на T1 или T2, когда в квадрате и добавлены X

Дан массив из N целых чисел. Даны два однозначных числа T1 и T2 и число X. Задача состоит в том, чтобы найти среди них целые числа, которые не заканчиваются ни на T1, ни на T2, когда они возведены в квадрат и к ним добавлено X. Если такого целого числа не существует, выведите -1 .

Примеры:

Input: N = 4, arr[] = {3, 1, 4, 7} X = 10, T1 = 5, T2 = 6
Output: 19 11 59
Explanation :
The modified value of the 3 is 19 (3^2 + 10).
The modified value of the 1 is 11 (1^2 + 10).
The modified value of the 4 is 26 (4^2 + 10).
The modified value of the 7 is 59 (7^2 + 10).
The modified values which do not end with 5 or 6
are 19, 11 and 59.
Hence the output is 19 11 59.

Input: N = 4, arr[] = {2, 18, 22, 8} X = 2, T1 = 5, T2 = 6
Output: -1
Explanation:
The modified value of the 2 is 6 (2^2 + 2).
The modified value of the 18 is 326 (18^2 + 2).
The modified value of the 22 is 486 (22^2 + 2).
The modified value of the 8 is 66 (8^2 + 2).
As, there are no modified values
which do not end with 5 or 6.
Hence the output is -1.

Подходить:

  • Инициализируйте флаг логической переменной как true .
  • Пройдите через элементы в массиве a [n] .
  • Сохраните сумму X и квадрат a [i] в переменной temp .
  • Проверьте, является ли последняя цифра в temp ни T1, ни T2 .
  • Если да, то выведите значение в temp и измените флаг на false .
  • После обхода всех элементов в массиве, если флаг установлен в true, выведите -1 .

Ниже приведена реализация вышеуказанного подхода:

C ++

// C ++ программа для поиска целых чисел
// который заканчивается либо T1, либо T2
// когда в квадрате и добавил X

  
#include <bits/stdc++.h>

using namespace std;

  
// Функция для печати элементов
// Не заканчивается на T1 или T2

void findIntegers(int n, int a[],

                   int x, int t1, int t2)

{

  

    // Флаг для проверки, если ни один из элементов

    // Не заканчиваться на t1 или t2

    bool flag = true;

  

    // Обход всех элементов

    for (int i = 0; i < n; i++) {

  

        // Временная переменная для хранения значения

        int temp = pow(a[i], 2) + x;

  

        // Если последняя цифра не t1

        // ни t2 тогда

        if (temp % 10 != t1 && temp % 10 != t2) {

  

            // Распечатать номер

            cout << temp << " ";

  

            // Установить флаг как False

            flag = false;

        }

    }

  

    // Если ни один из элементов

    // соответствует спецификации

    if (flag)

        cout << "-1";

}

  
// Код драйвера

int main()

{

    // Тестовый пример 1

    int N = 4, X = 10, T1 = 5, T2 = 6;

    int a[N] = { 3, 1, 4, 7 };

  

    // Вызов функции

    findIntegers(N, a, X, T1, T2);

    cout << endl;

  

    // Тестовый пример 2

    N = 4, X = 2, T1 = 5, T2 = 6;

    int b[N] = { 2, 18, 22, 8 };

  

    // Вызов функции

    findIntegers(N, b, X, T1, T2);

  

    return 0;

}

Джава

// Java программа для поиска целых чисел
// который заканчивается либо T1, либо T2
// когда в квадрате и добавил X

class GFG 

{

  

    // Функция для печати элементов

    // Не заканчивается на T1 или T2

    static void findIntegers(int n, int a[], 

                             int x, int t1, int t2) 

    

      

        // Флаг для проверки, если ни один из элементов

        // Не заканчиваться на t1 или t2

        boolean flag = true

      

        // Обход всех элементов

        for (int i = 0; i < n; i++) 

        

      

            // Временная переменная для хранения значения

            int temp = (int)Math.pow(a[i], 2) + x; 

      

            // Если последняя цифра не t1

            // ни t2 тогда

            if (temp % 10 != t1 && temp % 10 != t2) 

            

      

                // Распечатать номер

                System.out.print(temp + " "); 

      

                // Установить флаг как False

                flag = false

            

        

      

        // Если ни один из элементов

        // соответствует спецификации

        if (flag)

        {

            System.out.println();

            System.out.print("-1"); 

        }

    

      

    // Код драйвера

    public static void main(String args[]) 

    

        // Тестовый пример 1

        int N = 4;

        int X = 10;

        int T1 = 5

        int T2 = 6

        int a[] = { 3, 1, 4, 7 }; 

      

        // Вызов функции

        findIntegers(N, a, X, T1, T2); 

      

        // Тестовый пример 2

        N = 4; X = 2; T1 = 5; T2 = 6

        int b[] = { 2, 18, 22, 8 }; 

      

        // Вызов функции

        findIntegers(N, b, X, T1, T2); 

    

}

  
// Этот код предоставлен AnkitRai01

python3

# Python3 программа для поиска целых чисел
#, который заканчивается либо T1, либо T2
# когда в квадрате и добавил X

  
# Функция для печати элементов
# Не заканчивается T1 или T2

def findIntegers(n, a, x, t1, t2): 

  

    # Флаг, чтобы проверить, если ни один из элементов

    # Не заканчивайте t1 или t2

    flag = True

  

    # Пройдите через все элементы

    for i in range(n): 

  

        # Временная переменная для хранения значения

        temp = pow(a[i], 2) +

  

        # Если последняя цифра не является ни t1

        тогда ни т2

        if(temp % 10 != t1 and 

           temp % 10 != t2): 

  

            # Распечатать номер

            print(temp, end = " "

  

            # Установите флаг как False

            flag = False

  

    # Если ни один из элементов

    # соответствует спецификации

    if flag: 

        print(-1

  
Код водителя

  
# Тестовый пример 1

N , X , T1 , T2 = 4 , 10 , 5 , 6

a = [ 3, 1, 4, 7

  
# Вызовите функцию
findIntegers(N, a, X, T1, T2); 

print() 

  
# Тестовый пример 2

N , X , T1 , T2 = 4 , 2 , 5 , 6

b = [ 2, 18, 22, 8 ]

      
# Вызовите функцию
findIntegers(N, b, X, T1, T2)

  
# Этот код предоставлен divyamohan123

C #

// C # программа для поиска целых чисел
// который заканчивается либо T1, либо T2
// когда в квадрате и добавил X

using System;

      

class GFG 

{

  

    // Функция для печати элементов

    // Не заканчивается на T1 или T2

    static void findIntegers(int n, int []a, 

                             int x, int t1, int t2) 

    

      

        // Флаг для проверки, если ни один из элементов

        // Не заканчиваться на t1 или t2

        bool flag = true

      

        // Обход всех элементов

        for (int i = 0; i < n; i++) 

        

      

            // Временная переменная для хранения значения

            int temp = (int)Math.Pow(a[i], 2) + x; 

      

            // Если последняя цифра не t1

            // ни t2 тогда

            if (temp % 10 != t1 && 

                temp % 10 != t2) 

            

      

                // Распечатать номер

                Console.Write(temp + " "); 

      

                // Установить флаг как False

                flag = false

            

        

      

        // Если ни один из элементов

        // соответствует спецификации

        if (flag)

        {

            Console.WriteLine();

            Console.Write("-1"); 

        }

    

      

    // Код драйвера

    public static void Main(String []args) 

    

        // Тестовый пример 1

        int N = 4;

        int X = 10;

        int T1 = 5; 

        int T2 = 6; 

        int []a = { 3, 1, 4, 7 }; 

      

        // Вызов функции

        findIntegers(N, a, X, T1, T2); 

      

        // Тестовый пример 2

        N = 4; X = 2; T1 = 5; T2 = 6; 

        int []b = { 2, 18, 22, 8 }; 

      

        // Вызов функции

        findIntegers(N, b, X, T1, T2); 

    

}

  
// Этот код предоставлен 29AjayKumar

Выход:

19 11 59 
-1

Рекомендуемые посты:

Найдите целые числа, которые не заканчиваются на T1 или T2, когда в квадрате и добавлены X

0.00 (0%) 0 votes