11/06/2016

Hacker Rank solution for Maps-STL In C+

Problem:- maps-STL Inheritance Hacker Rank Solution or maps-STL Inheritance hacker rank solution c++ orMulti Level Inheritance in java or maps-STL Inheritance solution or maps-STL Inheritance solution in C++ or maps-STL Inheritance hacker rank solution in Java or maps-STL Inheritance hacker rank solution c++ or maps-STL Inheritance hacker rank solution c++ or maps-STL Inheritance program in c or maps-STL Inheritance solution in C or Hacker Rank Solution For maps-STL Inheritance in C++ or maps-STL Inheritance in C++ or Hacker Rank solution for maps-STL Inheritance in C++.

Check This- Hacker rank Solution for C++ Sub Domain Introduction, Classes, STL, Inheritance.

Explanation:- Maps are a part of the C++ STL ( Standard Template Library ). Maps are associative containers that store elements formed by a combination of a key value and a mapped value, following a specific order.The mainly used member functions of maps are:

Map Template:

std::map <key_type, data_type>

Declaration:

map<string, int>m; //Creates a map m where key_type is of type string and data_type is of type int.

Size:

int length=m.size(); //Gives the size of the map.

Insert:

m.insert(make_pair("hello",9)); //Here the pair is inserted into the map where the key is "hello" and the value associated with it is 9.

Erasing an element:

m.erase(Val); //Erases the pair from the map where the key_type is Val.

Finding an element:

map<string,int>::iterator itr=m.find(val); //Gives the iterator to the element val if it is found otherwise returns m.end() .
Ex: map<string,int>::iterator itr=m.find("Maps"); //If Maps is not present as the key value then itr==m.end().

Accessing the value stored in the key:

To get the value stored in the key "MAPS" we can do m["MAPS"] or we can get the iterator using the find function and then by itr->second we can access the value.

Submit your solution here:- Click here

Solution:-

#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <set>
#include <map>
#include <algorithm>
using namespace std;

int main() 
{

    /* vist http://www.programmingwithbasics.com */

    map<string,int>s;

    int q;
    cin>>q;

        for(int i=0;i<q;i++)
        {
           int t,n,m;
            cin>>t;
            switch(t)
                {
                case 1:
                {
                    string name;
                    int marks;
                    cin>>name>>marks;
                    map<string,int>::iterator itr=s.find(name);
                    if(itr==s.end())
                    s.insert(make_pair(name,marks));
                    else
                    itr->second+=marks;
                    break;
                }
                case 2:
                {
                    string name;
                    cin>>name;
                    s.erase(name);
                    break;
                }
                case 3:
                {
                    string name;
                    cin>>name;
                    map<string,int>::iterator itr=s.find(name);
                    if(itr==s.end())
                        cout<<"0"<<endl;
                    else
                        cout<<itr->second<<endl;
                    break;
                }
            }
        }
    return 0;

}

Output:-

1.Compilation With Custom Input

Hacker Rank solution for Maps-STL In C+

2. All Testcase's

Hacker Rank solution for Maps-STL In C+


You May Also Like


No comments:

Post a Comment