Add Two Integers Without Plus or Minus

Quick Overview

Practice returning the sum of two signed integers without the plus or minus operators. Cover mixed signs, zero, language-level integer behavior, and numeric safety.

Add Two Integers Without Plus or Minus

Company: Google

Role: Software Engineer

Category: Coding & Algorithms

Difficulty: medium

Interview Round: Other

# Add Two Integers Without Plus or Minus Given two integers `a` and `b`, return their sum without using the `+` or `-` operators. ### Function `int getSum(int a, int b)` ### Example 1 ```text Input: a = 7, b = -3 Output: 4 ``` ### Example 2 ```text Input: a = -8, b = -5 Output: -13 ``` ### Constraints - `-1000 <= a,b <= 1000`. ### Clarifications The operands may be positive, negative, or zero. Return the integer result; the restriction applies to computing the sum, not to the notation used to describe a negative input. ### What a Strong Answer Covers - Correct results for all sign combinations and zero. - Compliance with the operator restriction. - A correctness argument and the behavior of the chosen language's integer operations. - Time and auxiliary-space bounds. ### Follow-up Questions - Which inputs would you test to cover sign changes and carries across several bit positions? - How would you adapt the approach for a wider signed integer type?

Overview: Practice returning the sum of two signed integers without the plus or minus operators. Cover mixed signs, zero, language-level integer behavior, and numeric safety.

Google logo
Google
mediumSoftware EngineerOtherCoding & Algorithms
0
0

Add Two Integers Without Plus or Minus

Given two integers a and b, return their sum without using the + or - operators.

Function

int getSum(int a, int b)

Example 1

Input: a = 7, b = -3
Output: 4

Example 2

Input: a = -8, b = -5
Output: -13

Constraints

  • -1000 <= a,b <= 1000 .

Clarifications

The operands may be positive, negative, or zero. Return the integer result; the restriction applies to computing the sum, not to the notation used to describe a negative input.

What a Strong Answer Covers Guidance

  • Correct results for all sign combinations and zero.
  • Compliance with the operator restriction.
  • A correctness argument and the behavior of the chosen language's integer operations.
  • Time and auxiliary-space bounds.

Follow-up Questions Guidance

  • Which inputs would you test to cover sign changes and carries across several bit positions?
  • How would you adapt the approach for a wider signed integer type?