問題 c: 回文數
時間限制: 1 sec 記憶體限制: 128 mb
題目描述
若乙個數(首位不為零)從左向右讀與從右向左讀都一樣,我們就將其稱之為回文數。
例如:給定乙個10進製數56,將56加65(即把56從右向左讀),得到121是乙個回文數。
又如:對於10進製數87:
step1:87+78 = 165 step2:165+561 = 726
step3:726+627 = 1353 step4:1353+3531 = 4884
在這裡的一步是指進行了一次n進製的加法,上例最少用了4步得到回文數4884。
輸入第一行是整數n(2<=n<=10或n=16),表是這個數的進製;
第二行是n進製數m(100位之內),求最少經過幾步可以得到回文數。
輸出若最少在30步以內得到回文數,則輸出步數;
如果在30步以內(包含30步)不可能得到回文數,則輸出「impossible」(無引號)
樣例輸入
1087
樣例輸出4提示
十六進製制的10-15用a-f表示
c++**如下:
#include #include using namespace std;
int radix, n,i, sum=0, a[1001];
string s;
//判斷是否是回文數
bool palindromic(int n)
//兩數相加
int add(int n)
;//定義臨時陣列,表示兩數的和
for (i = 1; i <= n; i++)//進製數相加
if (c[n + 1])//保留進製
n++;
for (i = n; i >= 1; i--)
return n;
}int main()
while (sum <= 30)
sum++;
n = add(n);
}cout << "impossible!" << endl;
return 0;
}
2023年上海交通大學計算機研究生機試真題
題目描述 有乙個6 6的棋盤,每個棋盤上都有乙個數值,現在又乙個起始位置和終止位置,請找出乙個從起始位置到終止位置代價最小的路徑 1 只能沿上下左右四個方向移動 2 總代價是沒走一步的代價之和 3 每步 從a,b到c,d 的代價是c,d上的值與其在a,b上的狀態的乘積 4 初始狀態為1 每走一步,狀...
2023年上海交通大學計算機研究生機試真題
題目描述 對於乙個字串,將其字尾子串進行排序,例如grain 其子串有 grain rain ain in n 然後對各子串按字典順序排序,即 ain,grain,in,n,rain 輸入 每個案例為一行字串。輸出 將子串排序輸出 樣例輸入 grain 樣例輸出 ain graininn rain ...
上海交通大學復試題 最短路徑
上海交通大學復試題 最短路徑 時間限制 1秒 空間限制 65536k 熱度指數 3277 n個城市,標號從0到n 1,m條道路,第k條道路 k從0開始 的長度為2 k,求編號為0的城市到其他城市的最短距離 第一行兩個正整數n 2 n 100 m m 500 表示有n個城市,m條道路 接下來m行兩個整...