IEEE 1541


Submit solution

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

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

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 \(10^3\) en el sistema decimal, i \(2^{10}\) en el sistema binari.

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

  • kibi (Ki), \(2^{10}\) = 1024;
  • mebi (Mi), \(2^{20}\) = 1048576;
  • gibi (Gi), \(2^{30}\) = 1073741824;
  • tebi (Ti), \(2^{40}\) = 1099511627776;
  • pebi (Pi), \(2^{50}\) = 1125899906842624;
  • exbi (Ei), \(2^{60}\) = 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:

2 Kibytes = 16384 bits

2 bytes = 16 bits

Test Case 1

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

Test Case 2

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

Test Case 3

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

Test Case 4

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

Test Case 5

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

Test Case 6

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

Test Case 7

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

Test Case 8

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

Test Case 9

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

Test Case 10

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

Test Case 11

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

Test Case 12

Input
10 Ti bytes -> Gi bits
Output
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