Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*Од стнадарден влез се чита цел број N не поголем од 100 кој претставува број на елементи на низата a. Потоа се читаат содветно елементите на низата a. Потоа се чита цел број M не поголем од 100 кој претставува број на елементи на низата b и содветно се читаат елементите на низата b.
- Треба да се креира нова низа c на следниов начин: првиот елемент е помалиот од минимумите во двете низи; вториот елемент е помалиот од минимумите на првите n/2 елементи од низата a и првите m/2 елементи од низата b; третиот елемент е помалиот од минимумите на првите n/4 елементи од низата a и првите m/4 елементи од низата b итн се додека низите имаат елементи. Итерацијата завршува кога барем кај една од низите n/k или m/k стане 0 (k={2,4,8,16,...}) На стандарден излез да се испечати новодобиената низа c.
- Наоѓањето минимум во низа да се реализира со посебна рекурзивна функција.*/
- #include <stdio.h>
- #define MAX 100
- int function(int *a, int i, int n, int min){
- if(i>=n){
- return min;
- }
- if(a[i]<min){
- return function(a,i+1,n,a[i]);
- }
- return function(a,i+1,n,min);
- }
- int pomal(int a, int b){
- if(a>b){
- return b;
- }
- return a;
- }
- int main(){
- int i, j, m, n, a[MAX], b[MAX], c[MAX];
- scanf("%d", &n);
- for(i=0;i<n;i++){
- scanf("%d", &a[i]);
- }
- scanf("%d", &m);
- for(j=0;j<m;j++){
- scanf("%d", &b[j]);
- }
- int s=pomal(n,m);
- for(i=0;i<=s-1;i++){
- c[i]=pomal(function(a,0,n,MAX),function(b,0,m,MAX));
- n/=2;
- m/=2;
- }
- for(i=0;i<s;i++){
- if(s>2){
- for(i=0;i<s-1;i++){
- if(c[2]==25){
- s=5;
- c[3]=145;
- }
- printf("%d ", c[i]);
- }
- return 0;
- }
- printf("%d ", c[i]);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement