# The dice problem

You are given a **cubic dice** with **6** faces. All the individual faces have a number printed on them. The numbers are in the range of **1 to 6**, like any ordinary dice. You will be provided with a face of this cube, your task is to guess the number on the opposite face of the cube.

**Examples:**

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the **DSA Self Paced Course** at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer **Complete Interview Preparation Course****.**

In case you wish to attend **live classes **with experts, please refer **DSA Live Classes for Working Professionals **and **Competitive Programming Live for Students**.

Input:N = 2Output:5Explanation:

For dice facing number 5 opposite face will have the number 2.

Input:N = 6Output:1

**Naive Approach:** In a normal 6 faced dice, 1 is opposite to 6, 2 is opposite to 5, and 3 is opposite to 4. Hence a normal if-else-if block can be placed

**Approach:** The idea is based on the observation that the sum of two opposite sides of a cubical dice is equal to **7**. So, just subtract the given **N** from **7** and print the answer.

Below is the implementation of the above approach:

## C++

`// C++ program for the above approach` `#include<bits/stdc++.h>` `using` `namespace` `std;` `// Function to find number` `// written on the` `// opposite face of the dice` `int` `oppositeFaceOfDice(` `int` `N)` `{` ` ` `// Stores number on opposite face` ` ` `// of dice` ` ` `int` `ans = 7 - N;` ` ` `// Print the answer` ` ` `cout << ans;` `}` `// Driver Code` `int` `main()` `{` ` ` `// Given value of N` ` ` `int` `N = 2;` ` ` `// Function call to find number written on` ` ` `// the opposite face of the dice` ` ` `oppositeFaceOfDice(N);` ` ` `return` `0;` `}` |

## Java

`// Java program for the above approach` `import` `java.io.*;` `class` `GFG` `{` ` ` ` ` `// Function to find number` ` ` `// written on the` ` ` `// opposite face of the dice` ` ` `static` `void` `oppositeFaceOfDice(` `int` `N)` ` ` `{` ` ` ` ` `// Stores number on opposite face` ` ` `// of dice` ` ` `int` `ans = ` `7` `- N;` ` ` `// Print the answer` ` ` `System.out.println(ans);` ` ` `}` ` ` `// Driver Code` ` ` `public` `static` `void` `main(String[] args)` ` ` `{` ` ` ` ` `// Given value of N` ` ` `int` `N = ` `2` `;` ` ` `// Function call to find number written on` ` ` `// the opposite face of the dice` ` ` `oppositeFaceOfDice(N);` ` ` `}` `}` `// This code is contributed by Potta Lokesh` |

## Python3

`# Python3 program for the above approach` `# Function to find number written on the` `# opposite face of the dice` `def` `oppositeFaceOfDice(N):` ` ` ` ` `# Stores number on opposite face` ` ` `# of dice` ` ` `ans ` `=` `7` `-` `N` ` ` ` ` `# Print the answer` ` ` `print` `(ans)` `# Driver Code` `# Given value of N` `N ` `=` `2` `# Function call to find number written on` `# the opposite face of the dice` `oppositeFaceOfDice(N)` `# This code is contributed by gfgking` |

## C#

`// C# program for the above approach` `using` `System;` `using` `System.Collections.Generic;` `class` `GFG{` `// Function to find number` `// written on the` `// opposite face of the dice` `static` `void` `oppositeFaceOfDice(` `int` `N)` `{` ` ` ` ` `// Stores number on opposite face` ` ` `// of dice` ` ` `int` `ans = 7 - N;` ` ` `// Print the answer` ` ` `Console.Write(ans);` `}` `// Driver Code` `public` `static` `void` `Main()` `{` ` ` `// Given value of N` ` ` `int` `N = 2;` ` ` `// Function call to find number written on` ` ` `// the opposite face of the dice` ` ` `oppositeFaceOfDice(N);` `}` `}` `// This code is contributed by SURENDRA_GANGWAR.` |

## Javascript

`<script>` `// JavaScript program for the above approach` `// Function to find number` `// written on the` `// opposite face of the dice` `function` `oppositeFaceOfDice(N) {` ` ` `// Stores number on opposite face` ` ` `// of dice` ` ` `let ans = 7 - N;` ` ` `// Print the answer` ` ` `document.write(ans);` `}` `// Driver Code` `// Given value of N` `let N = 2;` `// Function call to find number written on` `// the opposite face of the dice` `oppositeFaceOfDice(N);` `// This code is contributed by gfgking` `</script>` |

**Output**

5

**Time Complexity:** O(1)**Auxiliary Space:** O(1)