Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- const int MAX = 100;
- void scan_array(int* a, int N);
- int dublicate(int* a, int N);
- void printf_array(int* a, int N);
- int main()
- {
- int a[MAX], b[MAX*2];
- int N, p = *a;
- scanf("%d", &N);
- scan_array(a, N);
- if(!duplicate(a, b, N))
- {
- print_array(b, N + *a);
- }
- else
- {
- printf("GRESHKA");
- }
- return 0;
- }
- void scan_array(int* a, int N)
- {
- for(int i = 0; i < N; i++)
- {
- scanf("%d", a+i);
- }
- }
- void print_array(int* a, int N)
- {
- for(int i = 0; i < N; i++)
- {
- printf("%d ", *(a+i));
- }
- }
- int duplicate(int* a, int* b, int N)
- {
- if(*a >= N)
- {
- return -1;
- }
- int i;
- for(i = 0; i < *a; i++)
- {
- *(b + i) = *(a + i); //get first elements
- }
- for(int j = i, p = 0; i < j + *a; i++, p++)
- {
- *(b + i) = *(a + p); //duplicate them
- }
- i = 2 * *a;
- for(int j = *a; j < N; i++, j++)
- {
- *(b + i) = *(a + j); //get the rest of the elements
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement