B. Spreadsheets
The solution to the above question is:-
#include <bits/stdc++.h>
using namespace std;
#define int long long int
#define F first
#define S second
#define pb push_back
#define si set<int>
#define vi vector<int>
#define pii pair<int, int>
#define vpi vector<pii>
#define vpp vector<pair<int, pii>>
#define mii map<int, int>
#define mpi map<pii, int>
#define spi set<pii>
#define endl "\n"
#define sz(x) ((int)x.size())
#define all(p) p.begin(), p.end()
#define double long double
#define que_max priority_queue<int>
#define que_min priority_queue<int, vi, greater<int>>
#define bug(...) __f(#__VA_ARGS__, __VA_ARGS__)
#define print(a) \
for (auto x : a) \
cout << x << " "; \
cout << endl
#define print1(a) \
for (auto x : a) \
cout << x.F << " " << x.S << endl
#define print2(a, x, y) \
for (int i = x; i < y; i++) \
cout << a[i] << " "; \
cout << endl
inline int power(int a, int b)
{
int x = 1;
while (b)
{
if (b & 1)
x *= a;
a *= a;
b >>= 1;
}
return x;
}
template <typename Arg1>
void __f(const char *name, Arg1 &&arg1) { cout << name << " : " << arg1 << endl; }
template <typename Arg1, typename... Args>
void __f(const char *names, Arg1 &&arg1, Args &&...args)
{
const char *comma = strchr(names + 1, ',');
cout.write(names, comma - names) << " : " << arg1 << " | ";
__f(comma + 1, args...);
}
const int N = 200005;
string convertToNumber(string s){
return "";
}
string convertToString(string s){
string ans="";
int num=stoi(s);
while(num>0){
char c='Z';
int curr=num%26;
char cc=curr+'A'-1;
if(curr==0){
ans+='Z';
num--;
}else{
ans+=cc;
}
num/=26;
}
reverse(ans.begin(),ans.end());
return ans;
}
void solve()
{
string s;
cin >> s;
bool first = false;
int n=s.length();
for(int i=2; i<n; i++){
if(s[i]=='C')first=true;
}
if(s[0]=='R' && first && s[1]<='9'){
string ans="";
int pos=-1;
for(int i=0; i<n; i++){
if(s[i]=='C')pos=i;
}
string row=s.substr(1,pos-1);
string col=s.substr(pos+1,n-1);
string ss=convertToString(col);
cout<<ss+row<<endl;
}
else{
string col="";
string row="";
for(int i=0; i<n; i++){
if(s[i]>='A' && s[i]<='Z'){
col+=s[i];
}
else{
row+=s[i];
}
}
int column=0;
int pow=1;
for(int i=col.size()-1; i>=0; i--){
int curr=col[i]-'A'+1;
column+=pow*curr;
pow*=26;
}
cout<<"R"+row+"C"<<to_string(column)<<endl;
}
}
int32_t main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
clock_t z = clock();
int t = 1;
cin >> t;
while (t--)
solve();
return 0;
}
Thank you for reading this
0 Comments
If you have any doubts/suggestion/any query or want to improve this article, you can comment down below and let me know. Will reply to you soon.