PROG0429 - Spreadsheets

no tags 

A spreadsheet is an interactive computer program for organizing and analyzing data in tabular form. The program operates on data represented as cells of an array, organized in rows and columns. A cell reference in A1 style consists of one or more uppercase letters to identify the column (starting at column A) followed by a row number (starting at row 1). The alternative R1C1 reference style consists of the letter R, the row number, the letter C, and the column number. Row and column numbers both start at 1. Most current spreadsheets use the A1 style, some providing the R1C1 style as a compatibility option.

Microsoft Excel
Microsoft Excel 2010 running on Windows 7

The numeration of columns in the A1 reference style works as follows. The first column is numbered A, the second is numbered B, until column 26 which is numbered Z. Then there are two-letter notations: column 27 is numbered AA, column 28 is numbered AB, column 52 is numbered AZ, column number 53 is numbered BA, and so on. After ZZ we get three-letter notations, after ZZZ we get four-letter notations, and so on.

Visicalc was the first electronic spreadsheet on a microcomputer, and it helped turn the Apple II computer into a popular and widely used system. Lotus 1-2-3 was the leading spreadsheet when DOS was the dominant operating system. Excel now has the largest market share on Windows and Macintosh platforms.

Input

The first line of input contains a number $t \in \mathbb{N}$ that indicates the number of spreadsheet cell references that are given. This is followed by $t$ lines, each containing a cell reference. Cell references either are given in A1 style or in R1C1 style.

Output

Convert each of the given cell references to its alternative notation.

Example

Input:

3
ZY5
R23C55
BC23

Output:

R5C701
BC23  
R23C55

Een spreadsheet of (digitaal) rekenblad is een interactieve computertoepassing om gegevens in tabelvorm te organiseren en analyseren. Dergelijke programma's kunnen bewerkingen uitvoeren op de gegevens die in de cellen van een rechthoekig rooster staan. Voor de verwijzing naar een cel die op een gegeven rij en kolom in het rooster staat, bestaan er twee notatievormen. Een celverwijzing in de A1 stijl bestaat uit één of meer hoofdletters die het kolomnummer voorstellen (te beginnen bij kolom A) gevolgd door een rijnummer (te beginnen bij rij 1). De alternatieve R1C1 stijl voor celverwijzingen wordt achtereenvolgens opgebouwd uit de letter R, een rijnummer, de letter C en een kolomnummer. Bij deze stijl worden de rijen en kolommen genummerd vanaf 1. Moderne spreadsheets gebruiken meestal de A1 stijl, maar sommige ondersteunen ook de R1C1 stijl als een alternatieve notatievorm.

Microsoft Excel
Microsoft Excel 2010 onder Windows 7

De nummering van kolommen in de A1 stijl werkt als volgt. De eerste kolom heeft nummer A, de tweede nummer B, enzoverder tot kolom 26 die het nummer Z krijgt. Daarna worden twee letters gebruikt voor de nummering van de kolommen: kolom 27 heeft nummer AA, kolom 28 nummer AB, kolom 52 nummer AZ, kolom 53 nummer BA, enzoverder. Na ZZ volgt een nummering met drie letters, na ZZZ volgt een nummering met vier letters, enzoverder.

Het eerste digitale rekenblad was VisiCalc (visual calculator) van het bedrijf Visicorp. VisiCalc werd bedacht door Dan Bricklin en grotendeels geprogrammeerd door Bob Frankston. Het was de killer application die de eerste Apple computers groot gemaakt heeft. Het werd na de lancering van Lotus 1-2-3 in enkele maanden tijd van de kaart geveegd. Tegenwoordig is Microsoft Excel de marktleider voor de Windows en Mac OS X besturingssystemen.

Invoer

De eerste regel van de invoer bevat een getal $t \in \mathbb{N}$ dat aangeeft hoeveel celverwijzingen van een spreadsheet er gegeven zijn. Daarna volgen $t$ regels die elk een celverwijzing bevatten. Celverwijzingen worden ofwel genoteerd in de A1 stijl of in de R1C1 stijl.

Uitvoer

Zet elk van de gegeven celverwijzingen om naar zijn alternatieve vorm.

Voorbeeld

Invoer:

3
ZY5
R23C55
BC23

Uitvoer:

R5C701
BC23  
R23C55


Added by:Peter Dawyndt
Date:2013-09-11
Time limit:10s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:PY_NBC
Resource:None