समस्या विवरण
मान लीजिए हमारे पास एक धनात्मक पूर्णांक है; हमें उसका संबंधित कॉलम शीर्षक ढूंढना है जैसा कि एक्सेल शीट में दिखाई देता है। तो [1 : A], [2 : B], [26 : Z], [27 : AA], [28 : AB] आदि।
उदाहरण
यदि इनपुट है: 28, तो आउटपुट होगा AB।
हल करने का दृष्टिकोण
इस समस्या को हल करने के लिए निम्नलिखित चरणों का पालन करें:
- जब n शून्येतर है:
- n := n - 1
- res := res + n % 26 + 'A' का ASCII
- n := n / 26
- सरणी res को रिवर्स करें
- res लौटाएं
C++ कार्यान्वयन
#include <bits/stdc++.h>
using namespace std;
class Solution {
public:
string convertToTitle(int n) {
string res;
while(n) {
res += (--n) % 26 + 'A';
n /= 26;
}
reverse(res.begin(), res.end());
return res;
}
};
int main() {
Solution ob;
cout << (ob.convertToTitle(30));
return 0;
}
इनपुट
30
आउटपुट
AD