👤

Se dă o matrice cu n linii și m coloane nr. naturale. Se cere :
a) câte elemente prime sunt pe conturul matricii.
b) afișați elementele din matrice care sunt precedate de un număr prim​


Răspuns :

Răspuns:

#include <iostream>

using namespace std;

bool ciur[1000001];

int v[1001][1001], t[1000001];

int main()

{

  ciur[0]=ciur[1]=1;

  for(int i=2; i*i<=1000000; i++)//ciurul lui Eratostene

  {

      if(ciur[i]==0)

      {

          for(int j=i*i; j<=1000000; j+=i)

          ciur[j]=1;

      }

  }

  long long n, m, cnt=0, k=0;

  cin>>n>>m;

  for(int i=1; i<=n; i++)//Matricea

  {

      for(int j=1; j<=m; j++)

      cin>>v[i][j];

  }

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

  {

      for(int j=1; j<=m; j++)

      {

          if((i==1 || j==1 || i==n || j==m) && ciur[v[i][j]]==0)//conturul

          cnt++;

          if(ciur[v[i][j-1]]==0)//precedentul

          {

              k++;

              t[k]=v[i][j];

          }

      }

  }

  cout<<cnt<<endl;

  for(int i=1; i<=k; i++)

  cout<<t[i]<<" ";

  return 0;

}

Explicație:

Vă mulțumim că ați ales să vizitați site-ul nostru dedicat Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări sau aveți nevoie de asistență suplimentară, vă rugăm să ne contactați. Revenirea dumneavoastră ne va bucura, iar pentru acces rapid, nu uitați să ne salvați la favorite!


En Trainingsy: Alte intrebari