ধরুন আমাদের একটি ধনাত্মক পূর্ণসংখ্যার মান আছে; একটি স্প্রেড শীটে প্রদর্শিত হিসাবে আমাদের এর সংশ্লিষ্ট কলামের শিরোনাম খুঁজে পেতে হবে। তাই [1 :A], [2 :B], [26 :Z], [27 :AA], [28 :AB] ইত্যাদি।
সুতরাং, যদি ইনপুট 29 এর মত হয়, তাহলে আউটপুট হবে AC।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
যখন n অ-শূন্য, কর −
-
n :=n − 1
-
res :=res + n mod 26 + 'A'
এর ASCII -
n :=n / 26
-
-
অ্যারের রেস রিভার্স করুন
-
রিটার্ন রিটার্ন
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
উদাহরণ
#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;
}
};
main(){
Solution ob;
cout << (ob.convertToTitle(30));
} ইনপুট
30
আউটপুট
AD