The below code will help you to solve the given problem and you can execute and cross verify with sample input and output.
#include<stdio.h>
#include<string.h>
int* uniqueValue(int input1,int input2[])
{
int left, current;
static int arr[4] = {0};
int i = 0;
for(i=0;i<input1;i++)
{
current = input2[i];
left = 0;
if(current > 0)
left = arr[(current-1)];
if(left == 0 && arr[current] == 0)
{
arr[current] = input1-current;
}
else
{
for(int j=(i+1);j<input1;j++)
{
if(arr[j] == 0)
{
left = arr[(j-1)];
arr[j] = left - 1;
}
}
}
}
return arr;
}
Answer:
Option a: a sorted array
Explanation:
Since the expectation on the data structure never need to add or delete items, a sorted array is the most desirable option. An array is known for its difficulty to modify the size (either by adding item or removing item). However, this disadvantage would no longer be a concern for this task. This is also the reason, linked list, binary search tree and queue is not a better option here although they offer much greater efficiency to add and remove item from collection.
On another hand, any existing items from the sorted array can be easily retrieved using address indexing and therefore the data query process can be very fast and efficient.
Answer:
C++.
Explanation:
<em>Code snippet.</em>
#include <map>
#include <iterator>
cin<<N;
cout<<endl;
/////////////////////////////////////////////////
map<string, string> contacts;
string name, number;
for (int i = 0; i < N; i++) {
cin<<name;
cin<<number;
cout<<endl;
contacts.insert(pair<string, string> (name, number));
}
/////////////////////////////////////////////////////////////////////
map<string, string>::iterator it = contacts.begin();
while (it != contacts.end()) {
name= it->first;
number = it->second;
cout<<word<<" : "<< count<<endl;
it++;
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////
I have used a C++ data structure or collection called Maps for the solution to the question.
Maps is part of STL in C++. It stores key value pairs as an element. And is perfect for the task at hand.
Answer:
For 32 bits Instruction Format:
OPCODE DR SR1 SR2 Unused bits
a) Minimum number of bits required to represent the OPCODE = 3 bits
There are 8 opcodes. Patterns required for these opcodes must be unique. For this purpose, take log base 2 of 8 and then ceil the result.
Ceil (log2 (8)) = 3
b) Minimum number of bits For Destination Register(DR) = 4 bits
There are 10 registers. For unique register values take log base 2 of 10 and then ceil the value. 4 bits are required for each register. Hence, DR, SR1 and SR2 all require 12 bits in all.
Ceil (log2 (10)) = 4
c) Maximum number of UNUSED bits in Instruction encoding = 17 bits
Total number of bits used = bits used for registers + bits used for OPCODE
= 12 + 3 = 15
Total number of bits for instruction format = 32
Maximum No. of Unused bits = 32 – 15 = 17 bits
OPCODE DR SR1 SR2 Unused bits
3 bits 4 bits 4 bits 4 bits 17 bits
<em>Intrusion means unauthorized and harmful activities happening in your system. Any irregularities in the system is considered as intrusion and therefore monitored by administrators and can be detected using Intrusion Detection System.
</em>
<em>Examples of Intrusion attacks in a network are:
</em>
- <em>Denial of Service (Dos) - denial of service means flooding the system causing it to crash and unable to respond to a service request. Normally, a DoS attack is facilitated by numbers of hosts sending enormous request to a victim computer. The requests can be in a form of code that would flood the system and making it to unresponsive. </em>
- <em>Man in the Middle Attack (MiM) - a hacker would be in the middle of the communication between a client computer and a server computer. The hacker can mimic IPs within the network and steal information then sends it to the intended receiver. </em>
- <em>SQL Injection - For websites that runs database like SQL, a code by the hacker can be added to the website and making him gained access to the database information successfully.</em>