Set .difference() Operation in python - HackerRank Solution

Hello Programmers, In this post, you will know how to solve the Set .difference() Operation in python HackerRank Solution. This problem is a part of the HackerRank Python Programming Series.

Set .difference() Operation in python - HackerRank Solution
Set .difference() Operation in python HackerRank Solution

One more thing to add, don’t directly look for the solutions, first try to solve the problems of Hackerrank by yourself. If you find any difficulty after trying several times, then you can look for solutions.

Set .difference() Operation in python HackerRank Solution

Problem

.difference()
The tool .difference() returns a set with all the elements from the set that are not in an iterable.
Sometimes the – operator is used in place of the .difference() tool, but it only operates on the set of elements in set.
Set is immutable to the .difference() operation (or the – operation).

>>> s = set("Hacker")
>>> print s.difference("Rank")
set(['c', 'r', 'e', 'H'])
>>> print s.difference(set(['R', 'a', 'n', 'k']))
set(['c', 'r', 'e', 'H'])
>>> print s.difference(['R', 'a', 'n', 'k'])
set(['c', 'r', 'e', 'H'])
>>> print s.difference(enumerate(['R', 'a', 'n', 'k']))
set(['a', 'c', 'r', 'e', 'H', 'k'])
>>> print s.difference({"Rank":1})
set(['a', 'c', 'e', 'H', 'k', 'r'])
>>> s - set("Rank")
set(['H', 'c', 'r', 'e'])

Task :

Students of District College have a subscription to English and French newspapers. Some students have subscribed to only the English newspaper, some have subscribed to only the French newspaper, and some have subscribed to both newspapers.
You are given two sets of student roll numbers. One set has subscribed to the English newspaper, and one set has subscribed to the French newspaper. Your task is to find the total number of students who have subscribed to only English newspapers.

Input Format :

The first line contains the number of students who have subscribed to the English newspaper.
The second line contains the space separated list of student roll numbers who have subscribed to the English newspaper.
The third line contains the number of students who have subscribed to the French newspaper.
The fourth line contains the space separated list of student roll numbers who have subscribed to the French newspaper.

Constraints :

  • 0 < Total number of student in college < 1000

Output Format :

Output the total number of students who are subscribed to the English newspaper only.

Sample Input :

9
1 2 3 4 5 6 7 8 9
9
10 1 2 3 11 21 55 6 8

Sample Output :

4

Explanation :

The roll numbers of students who only have English newspaper subscriptions are:
4, 5, 7 and 9.
Hence, the total is 4 students.

Set .difference() Operation in python HackerRank Solution

# Set .difference() Operation in python - Hacker Rank Solution
# python3
# Enter your code here. Read input from STDIN. Print output to STDOUT
# Set .difference() Operation in python - Hacker Rank Solution START
N1 = int(input())
storage1 = set(input().split())
N2 = int(input())
storage2 = set(input().split())
storage3 = storage1.difference(storage2)
print(len(storage3))
# Set .difference() Operation in python - Hacker Rank Solution END

Disclaimer: The above Problem (Set .intersection() Operation in python) is generated by Hackerrank but the Solution is Provided by BrokenProgrammers. This tutorial is only for Educational and Learning purposes.

Next: Set .symmetric_difference() Operation in python HackerRank Solution

Leave a Reply

Your email address will not be published. Required fields are marked *