IEEE 1541


Submit solution

Points: 10
Time limit: 5.0s
Memory limit: 256M

Author:
Problem type
Allowed languages
C#, Go, Java, Python

L'stàndard IEEE 1541 estableix l'ús de prefixes per múltiples binaris. Tradicionalment s'utilitzaven (i encara s'utilitza en molts àmbits) els prefixes Kilo, Mega, Giga, Tera, etc. com a prefixes binaris, la qual cosa provocava confusió amb els prefixes decimals. Per exemple, un Kilo era 103 en el sistema decimal, i 210 en el sistema binari.

L'IEEE 1541 tracta de posar fi a aquesta confusió establint uns nous prefixes per al sistema binari:

  • kibi (Ki), 210 = 1024;
  • mebi (Mi), 220 = 1048576;
  • gibi (Gi), 230 = 1073741824;
  • tebi (Ti), 240 = 1099511627776;
  • pebi (Pi), 250 = 1125899906842624;
  • exbi (Ei), 260 = 1152921504606846976;

Programa un conversor d'unitats binàries.

Input Format

La entrada consisteix en les unitats (U), el prefixe binari (sP) i la unitat de mesura (sU), que s'han de convertir.

A continuació hi ha un fletxa -> indicant la operació de conversió.

A continuació ve el prefixe binari (dP) i la unitat de mesura (dU) a la qual s'han de convertir.

Els Prefixs i Unitats són aquests:

Prefixs = { _ | Ki | Mi | Gi | Ti | Pi | Ei }

Unitats = { bit | byte }

El prefix _ indica l'absència de prefix.

Constraints

  • 0<=U<=1152921504606846976
  • Els prefixs i les unitats són valids.
  • Tant les unitats d'entrada com les de sortida són nombres sense decimals.

Output Format

S'escriurà la igualtat de la conversió. S'ha d'eliminanr el _ , i s'han d'unir el prefix i la unitat de mesura:

Exemples:

Copy
2 Kibytes = 16384 bits

2 bytes = 16 bits

Test Case 1

Input
Copy
8 _ bits -> _ bytes
Output
Copy
8 bits = 1 bytes

Test Case 2

Input
Copy
8 _ bits -> _ bytes
Output
Copy
8 bits = 1 bytes

Test Case 3

Input
Copy
1 _ bytes -> _ bits
Output
Copy
1 bytes = 8 bits

Test Case 4

Input
Copy
1 Ki bytes -> _ bytes
Output
Copy
1 Kibytes = 1024 bytes

Test Case 5

Input
Copy
1 Mi bytes -> _ bytes
Output
Copy
1 Mibytes = 1048576 bytes

Test Case 6

Input
Copy
1 Ki bytes -> _ bits
Output
Copy
1 Kibytes = 8192 bits

Test Case 7

Input
Copy
1 Ki bits -> _ bytes
Output
Copy
1 Kibits = 128 bytes

Test Case 8

Input
Copy
1073741824 Mi bits -> Gi bytes
Output
Copy
1073741824 Mibits = 131072 Gibytes

Test Case 9

Input
Copy
1125899906842624 Ki bytes -> Ei bits
Output
Copy
1125899906842624 Kibytes = 8 Eibits

Test Case 10

Input
Copy
1099511627776 Mi bits -> Pi bytes
Output
Copy
1099511627776 Mibits = 128 Pibytes

Test Case 11

Input
Copy
4 Pi bytes -> Mi bytes
Output
Copy
4 Pibytes = 4294967296 Mibytes

Test Case 12

Input
Copy
10 Ti bytes -> Gi bits
Output
Copy
10 Tibytes = 81920 Gibits

Test Case 13

Hidden: this is a private test case!

Test Case 14

Hidden: this is a private test case!

Test Case 15

Hidden: this is a private test case!


Authorship: Gerard Falcó

CC BY-NC-SA 4.0