Conference [Day 1][Balkan Olympiad in Informatics 2016] (501 downloads)
Conference (Solution) [Day 1][Balkan Olympiad in Informatics 2016] (447 downloads)
Hacker [Day 1][Balkan Olympiad in Informatics 2016] (452 downloads)
Hacker (Solution) [Day 1][Balkan Olympiad in Informatics 2016] (447 downloads)
Power Towers [Day 1][Balkan Olympiad in Informatics 2016] (466 downloads)
Power Towers (Solution) [Day 1][Balkan Olympiad in Informatics 2016] (517 downloads)
Acrobat [Day 2][Balkan Olympiad in Informatics 2016] (400 downloads)
Acrobat (Solution) [Day 2][Balkan Olympiad in Informatics 2016] (387 downloads)
Cruise [Day 2][Balkan Olympiad in Informatics 2016] (392 downloads)
Cruise (Solution) [Day 2][Balkan Olympiad in Informatics 2016] (364 downloads)
Lefkaritika [Day 2][Balkan Olympiad in Informatics 2016] (395 downloads)
Lefkaritika (Solution) [Day 2][Balkan Olympiad in Informatics 2016] (385 downloads)
Because of reasons we wanted to find the
IMSI of a SIM card and the
MSISDN of its connection on a phone we had in our hands.
We did not wish to install additional applications on that phone to get this information so we had to find an alternative method in getting the
IMSI and the
Luckily for us there was a way using the
USSD codes that were provided by
Using the dialer (phone application) of our phone we typed the following two commands (one at a time) and then pressed the call (green) button.
To get the
MSISDN we called:
To get the
IMSI we called:
After each call a popup message would appear from the provider (MTN) showing us the information asked.
Unstructured Supplementary Service Data (USSD), sometimes referred to as “Quick Codes” or “Feature codes”, is a communications protocol used by GSM cellular telephones to communicate with the mobile network operator’s computers. USSD can be used for WAP browsing, prepaid callback service, mobile-money services, location-based content services, menu-based information services, and as part of configuring the phone on the network.
MSISDN is a number uniquely identifying a subscription in a GSM or a UMTS mobile network. Simply put, it is the mapping of the telephone number to the SIM card in a mobile/cellular phone. This abbreviation has a several interpretations, the most common one being “Mobile Station International Subscriber Directory Number”.
The International Mobile Subscriber Identity or IMSI is used to identify the user of a cellular network and is a unique identification associated with all cellular networks. It is stored as a 64 bit field and is sent by the phone to the network. It is also used for acquiring other details of the mobile in the home location register (HLR) or as locally copied in the visitor location register. To prevent eavesdroppers identifying and tracking the subscriber on the radio interface, the IMSI is sent as rarely as possible and a randomly generated TMSI is sent instead.
Happy new year people!!
Google released a practice problem for Google Hash Code 2018!
Please do not forget to register!Practice Problem for Google Hash Code 2018 - Problem Statement (2665 downloads) Practice Problem for Google Hash Code 2018 - Data Sets (1130 downloads)
Submission deadline: Thursday, Mar 1, 19:00 Cyprus time (18:00 CET)
Practice Problem for Hash Code
Did you know that at any given time, someone is cutting pizza somewhere around the world? The decision about how to cut the pizza sometimes is easy, but sometimes it’s really hard: you want just the right amount of tomatoes and mushrooms on each slice. If only there was a way to solve this problem using technology…
The pizza is represented as a rectangular, 2-dimensional grid of
R rows and
C columns. The cells within the grid are referenced using a pair of 0-based coordinates [
c] , denoting respectively the row and the column of the cell.
Each cell of the pizza contains either:
- mushroom, represented in the input file as
- tomato, represented in the input file as
A slice of pizza is a rectangular section of the pizza delimited by two rows and two columns, without holes.
The slices we want to cut out must contain at least L cells of each ingredient (that is, at least L cells of mushroom and at least
L cells of tomato) and at most
H cells of any kind in total – surprising as it is, there is such a thing as too much pizza in one slice.
The slices being cut out cannot overlap. The slices being cut do not need to cover the entire pizza.
The goal is to cut correct slices out of the pizza maximizing the total number of cells in all slices.
Input data set
The input data is provided as a data set file – a plain text file containing exclusively ASCII characters with lines terminated with a single
\n character at the end of each line (UNIX- style line endings).
The file consists of:
- one line containing the following natural numbers separated by single spaces:
1 ≤ R ≤ 1000) is the number of rows,
1 ≤ C ≤ 1000) is the number of columns,
1 ≤ L ≤ 1000) is the minimum number of each ingredient cells in a slice,
1 ≤ H ≤ 1000) is the maximum total number of cells of a slice
Rlines describing the rows of the pizza (one after another). Each of these lines contains
characters describing the ingredients in the cells of the row (one cell after another). Each character is either
M(for mushroom) or
Example Input File
3 5 1 6 TTTTT TMMMT TTTTT
3 rows, 5 columns, min 1 ingredient per slice, max 6 cells per slice
The file must consist of:
- one line containing a single natural number
0 ≤ S ≤ R × C) , representing the total number of slices to be cut,
Ulines describing the slices. Each of these lines must contain the following natural numbers
separated by single spaces:
0 ≤ r1,
r2 < R,
0 ≤ c1,
c2 < C) describe a slice of pizza delimited by the rows
r2and the columns
c2, including the cells of the delimiting rows and columns. The rows (
r2) can be given in any order. The columns (
c2) can be given in any order too.
3 0 0 2 1 0 2 2 2 0 3 2 4
3 slices. First slice between rows (0,2) and columns (0,1). Second slice between rows (0,2) and columns (2,2). Third slice between rows (0,2) and columns (3,4).
Slices described in the example submission file marked in green, orange and purple.
For the solution to be accepted:
- the format of the file must match the description above,
- each cell of the pizza must be included in at most one slice,
- each slice must contain at least
Lcells of mushroom,
- each slice must contain at least
Lcells of tomato,
- total area of each slice must be at most
The submission gets a score equal to the total number of cells in all slices.
Note that there are multiple data sets representing separate instances of the problem. The final
score for your team is the sum of your best scores on the individual data sets.
The example submission file given above cuts the slices of 6, 3 and 6 cells, earning 6 + 3 + 6 = 15 points.
Hash Code started in 2014 with just 200 participants from France. In 2017, more than 26,000 participants from across Europe, the Middle East and Africa took part in the competition. You can take a look at the problems and winning teams from past editions of Hash Code below.
Past problem statements
Hash Code 2017, Final Round
Hash Code 2017, Final Round - Problem (1467 downloads)
Who doesn’t love wireless Internet? Millions of people rely on it for productivity and fun in countless cafes, railway stations and public areas of all sorts. For many institutions, ensuring wireless Internet access is now almost as important a feature of building facilities as the access to water and electricity. Typically, buildings are connected to the Internet using a fiber backbone. In order to provide wireless Internet access, wireless routers are placed around the building and connected using fiber cables to the backbone. The larger and more complex the building, the harder it is to pick router locations and decide how to lay down the connecting cables.
Hash Code 2017, Online Qualification Round
Hash Code 2017, Online Qualification Round - Problem (1451 downloads)
Have you ever wondered what happens behind the scenes when you watch a YouTube video? As more and more people watch online videos (and as the size of these videos increases), it is critical that video-serving infrastructure is optimized to handle requests reliably and quickly. This typically involves putting in place cache servers, which store copies of popular videos. When a user request for a particular video arrives, it can be handled by a cache server close to the user, rather than by a remote data center thousands of kilometers away. Given a description of cache servers, network endpoints and videos, along with predicted requests for individual videos, decide which videos to put in which cache server in order to minimize the average waiting time for all requests.
Schedule Satellite Operations
Hash Code 2016, Final Round
Hash Code 2016, Final Round - Problem (1090 downloads)
A satellite equipped with a high-resolution camera can be an excellent source of geo imagery. While harder to deploy than a plane or a Street View car, a satellite — once launched — provides a continuous stream of fresh data. Terra Bella is a division within Google that deploys and manages high-resolution imaging satellites in order to capture rapidly-updated imagery and analyze them for commercial customers. With a growing constellation of satellites and a constant need for fresh imagery, distributing the work between the satellites is a major challenge. Given a set of imaging satellites and a list of image collections ordered by customers, schedule satellite operations so that the total value of delivered image collections is as high as possible.
Optimize Drone Deliveries
Hash Code 2016, Online Qualification Round
Hash Code 2016, Online Qualification Round - Problem (1222 downloads)
The Internet has profoundly changed the way we buy things, but the online shopping of today is likely not the end of that change; after each purchase we still need to wait multiple days for physical goods to be carried to our doorstep. Given a fleet of drones, a list of customer orders and availability of the individual products in warehouses, schedule the drone operations so that the orders are completed as soon as possible.
Route Loon Balloons
Hash Code 2015, Final Round
Hash Code 2015, Final Round - Problem (941 downloads)
Project Loon aims to bring universal Internet access using a fleet of high altitude balloons equipped with LTE transmitters. Circulating around the world, Loon balloons deliver Internet access in areas that lack conventional means of Internet connectivity. Given the wind data at different altitudes, plan altitude adjustments for a fleet of balloons to provide Internet coverage to select locations.
Optimize a Data Center
Hash Code 2015, Online Qualification Round
Hash Code 2015, Online Qualification Round - Problem (1244 downloads)
For over ten years, Google has been building data centers of its own design, deploying thousands of machines in locations around the globe. In each of these of locations, batteries of servers are at work around the clock, running services we use every day, from Google Search and YouTube to the Judge System of Hash Code. Given a schema of a data center and a list of available servers, your task is to optimize the layout of the data center to maximize its availability.
Street View Routing
Hash Code 2014, Final Round
Hash Code 2014, Final Round - Problem (1132 downloads)
The Street View imagery available in Google Maps is captured using specialized vehicles called Street View cars. These cars carry multiple cameras capturing pictures as the car moves around a city. Capturing the imagery of a city poses an optimization problem: the fleet of cars is available for a limited amount of time and we want to cover as much of the city streets as possible.
We’ll be hosting a hub at the Cyprus University of Technology for the Online Qualification Round of Hash Code, a team-based programming competition created by Google for university students and industry professionals. The Online Qualification Round takes place on the 1st of March at 19:30 EET and registered teams from Cyprus are invited to participate from our hub, which will be at the Labs of the University. Top scoring teams from the Online Qualification Round will then be invited to Google’s Paris office to compete in the Final Round of the competition on the 1st of April.
If you’re interested in joining our hub, find a team (two to four people) and register at g.co/hashcode. Make sure to select Cyprus University of Technology from the list of hubs in the Judge System.
Cyprus University of Technology Room: ΚΧΕ 1 - Computer Lab Polyxeni Loizia and Eleni Autonomou Building (Old Cadastre) Athinon Street Limassol Τεχνολογικό Πανεπιστήμιο Κύπρου Δωμάτιο: ΚΧΕ 1 - Εργαστήριο Ηλεκτρονικών Υπολογιστών Κτήριο Πολυξένη Λοϊζία και Ελένη Αυτονόμου (Παλιό Κτηματολόγιο) Οδός Αθηνών Λεμεσός
Date and Time:
1st March 2018 From: 19:30 EET To: 23:30 EET
Free Amenities Offered
High speed Internet access Wi-Fi access to the Internet for your mobile devices (personal computers and smart phones) Lab computers will be available for use by the participants Food in the form of snacks and beverages will be available outside the labs
Google Hash Code 2018 – Online Qualification Round Schedule
- The hub will open to the public
- People can view the live stream on the video projector
- Teams can set themselves up with the help of the volunteers
- Live stream starts
- Task will be made available, competition starts
- Scoreboard will be displayed on the video projector
- Participating teams will be confirmed in the Judge System
- End of the competition
- Announcement of the score for the local teams
- The hub will close