• Skip to primary navigation
  • Skip to content
  • Skip to primary sidebar
  • Skip to secondary sidebar

GoHired

Interview Questions asked in Google, Microsoft, Amazon

Join WeekEnd Online Batch from 4-April-2020 on How to Crack Coding Interview in Just 10 Weeks : Fees just 20,000 INR

  • Home
  • Best Java Books
  • Algorithm
  • Internship
  • Certificates
  • About Us
  • Contact Us
  • Privacy Policy
  • Array
  • Stack
  • Queue
  • LinkedList
  • DP
  • Strings
  • Tree
  • Mathametical
  • Puzzles
  • Graph

CodeChef’ RRCOPY

July 26, 2014 by Dhaval Dave

Def: 
You had an array of integer numbers. You also had a beautiful operations called “Copy-Paste” which allowed you to copy any contiguous sub-sequence of your array and paste it in any position of your array. For example, if you have array [1, 2, 3, 4, 5] and copy it’s sub-sequence from the second to the fourth element and paste it after the third one, then you will get [1, 2, 3, 2, 3, 4, 4, 5] array. You remember that you have done a finite(probably zero) number of such operations over your initial array and got an array A as a result. Unfortunately you don’t remember the initial array itself, so you would like to know what could it be. You are interested by the smallest such array. So the task is to find the minimal size(length) of the array that A can be obtained from by using “Copy-Paste” operations.
PS : This is CodeChef’s problemInput

The first line of the input contains an integer T denoting the number of test cases. The description of T test cases follows.
The first line of each test case contains a single integer N denoting the number of elements in obtained array A. The second line contains N space-separated integers A1, A2, …, AN denoting the array.

Example :
5 , 1 1 1 1 1
5 , 1 2 3 1 2

Output:
1
3

Explanation :
What we want here is to get exactly the count of unique number.
One way is to do with Two loops, for each number check whole string.
Second way is to create hash for each individual number and keep count.
Third and simple way is to keep a hash kind of array, for each single occurrence of a number w’ll just mark it True. and keep the counter.

Thanks to Dhaval for suggesting this approach and Code

Code :


#include <stdio.h>
#include <stdbool.h>

int rrcopy(int n, int a[]){
 int i=0,ans=0;
 bool c[100001]={0}; ans=0;
 for(i=0;i<n;i++){
  if(!c[a[i]]) {c[a[i]]=1;ans++; }
 }
 return ans;
}
int main(void) {
 int n;
 //int a[]={1,1,1}; //op 1
 int a[]={1,2,3,2,3,4,4,5}; //op 5
 //int a[]={1,2,3,2,3,5}; // op 4

 n=sizeof(a)/sizeof(int);
 int l=rrcopy(n,a);
 printf("min length %d",l);
 return l;
}

You can find it working at http://ideone.com/e.js/xuHuWk 

Similar Articles

Filed Under: Amazon Interview Question, Interview Questions, Microsoft Interview Questions, problem Tagged With: Array, codechef

Reader Interactions

Primary Sidebar

Join WeekEnd Online/Offline Batch from 4-April-2020 on How to Crack Coding Interview in Just 10 Weeks : Fees just 20,000 INR

Join WeekEnd Online/Offline Batch from 4-April-2020

WhatsApp us

Secondary Sidebar

Custom Search

  • How I cracked AMAZON
  • LeetCode
  • Adobe
  • Amazon
  • Facebook
  • Microsoft
  • Hacker Earth
  • CSE Interview

Top Rated Questions

Microsoft BING Interview Experience

Printing each word reverse in string

Stickler thief

Print Power Set of a Set

Find next greater number with same set of digits

FizzBuzz Solution C C++

SAP Off Campus Hiring_ March 2015 Verbal Skills

Find Nearest Minimum number in left side in O(n)

Memory Efficient LinkedList

Find loop in Singly linked list

1014 Practice Question of New GRE – Princeton

C++ OOPs Part1

Introduction To Number Theory ( Part 1 )

SAP Interview Questions

Find if two rectangles overlap

LeetCode : Word Search

strtok()

Right view of Binary tree

Length of the longest substring without repeating characters

Diagonal Traversal of Binary Tree

Inorder and Preorder traversals of a Binary Tree given. Output the Postorder traversal of it.

Given a float number convert it into the string WITHOUT using any inbuilt Function

Binary Tree in Java

Check Binary Tree is Binary Search Tree or not

Print vertical sum of all the axis in the given binary tree

Print all nodes that are at distance k from a leaf node

Hackerearth : Counting Subarrays

C++ OOPs Part2

System Design: Designing a LLD for Hotel Booking

Sort an array according to the order defined by another array

Copyright © 2026 · Genesis Framework · WordPress · Log in