Accenture Coding Questions and Solution 2024

Table of Contents

1.Problem Description :


The function accepts two positive integers ‘r’ and ‘unit’ and a positive integer array ‘arr’ of size ‘n’ as its argument ‘r’ represents the number of rats present in an area, ‘unit’ is the amount of food each rat consumes and each ith element of array ‘arr’ represents the amount of food present in ‘i+1’ house number, where 0 <= i

Note:

  • Return -1 if the array is null
  • Return 0 if the total amount of food from all houses is not sufficient for all the rats.
  • Computed values lie within the integer range.

Example:

Input:

  • r: 7
  • unit: 2
  • n: 8
  • arr: 2 8 3 5 7 4 1 2

Output:

4

Explanation:
Total amount of food required for all rats = r * unit

= 7 * 2 = 14.

The amount of food in 1st houses = 2+8+3+5 = 18. Since, amount of food in 1st 4 houses is sufficient for all the rats. Thus, output is 4.

import java.util.*;
class Main
{
  public static int solve (int r, int unit, int arr[], int n)
  {
    if (arr == null)
      return -1;
    int res = r * unit;
    int sum = 0;
    int count = 0;
    for (int i = 0; i < n; i++)
      {
	sum = sum + arr[i];
	count++;
	if (sum >= res)
	  break;
      }
    if (sum < res)
        return 0;
    return count;
  }
  public static void main (String[]args)
  {
    Scanner sc = new Scanner (System.in);
    int r = sc.nextInt ();
    int unit = sc.nextInt ();
    int n = sc.nextInt ();
    int arr[] = new int[n];

    for (int i = 0; i < n; i++)
      arr[i] = sc.nextInt ();
    System.out.println (solve (r, unit, arr, n));
  }
}

2.Problem Description :


The Binary number system only uses two digits, 0 and 1 and number system can be called binary string. You are required to implement the following function:

int OperationsBinaryString(char* str);

The function accepts a string str as its argument. The string str consists of binary digits eparated with an alphabet as follows:

  • – A denotes AND operation
  • – B denotes OR operation
  • – C denotes XOR Operation

You are required to calculate the result of the string str, scanning the string to right taking one opearation at a time, and return the same.

Note:

  • No order of priorities of operations is required
  • Length of str is odd
  • If str is NULL or None (in case of Python), return -1

Input:
str: 1C0C1C1A0B1

Output:
1

Explanation:
The alphabets in str when expanded becomes “1 XOR 0 XOR 1 XOR 1 AND 0 OR 1”, result of the expression becomes 1, hence 1 is returned.

Sample Input:
0C1A1B1C1C1B0A0

Output:
0

import java.util.*;
class Main
{
  public static int operationsBinaryString (String str)
  {
    if (str == null)
      return -1;
    int res = str.charAt (0) - '0';
    for (int i = 1; i < str.length ();)
      {
	char prev = str.charAt (i);
	  i++;
	if (prev == 'A')
	  res = res & (str.charAt (i) - '0');
	else if (prev == 'B')
	  res = res | (str.charAt (i) - '0');
	else
	    res = res ^ (str.charAt (i) - '0');
	  i++;
      }
    return res;
  }
  public static void main (String[]args)
  {
    Scanner sc = new Scanner (System.in);
    String str = sc.next ();
    System.out.println (operationsBinaryString (str));
  }
}