




uj5u.com熱心網友回復:
如果是編程平臺的題,最好給個題目鏈接,另外,你代碼發成圖片,別人幫你除錯難道還要再手打一遍?
uj5u.com熱心網友回復:
五位3進制,最大也不過3^6-1 = 728而已, 怎么可能出那么長的結果呢uj5u.com熱心網友回復:
按你現在的思路,回圈中的t要倒過來算for (long long i=4; i<s; i++) { //for從4開始
switch (n[i]) case不變
switch (n[i-1]) case 不變
...
switch (n[i-4]) case 不變//陣列倒序來算
}
或者
for (long long i=0; i+4<s; i++) {
switch (n[i]) case 不變
switch (n[i+1]) { //case變
case y: t=t*10+2; break;
case b: t=t*10+1; break;
case r: t=t*10;
}
...
switch (n[i+4]) {//陣列還是順序算
case y: t=t*10+2; break;
case b: t=t*10+1; break;
case r: t=t*10;
}
}
另外,其實在for里就可以把10進制算好
for (long long i=0; i+4<s; i++) {
switch (n[i]) //case 不變
switch (n[i+1]) { //case變
case y: t=t*3+2; break;
case b: t=t*3+1; break;
case r: t=t*3;
}
...
switch (n[i+4]) {//陣列還是順序算
case y: t=t*3+2; break;
case b: t=t*3+1; break;
case r: t=t*3; //這樣算出來的t就是10進制了
}
}
uj5u.com熱心網友回復:
謝謝指教,受教了轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/90731.html
標籤:新手樂園
