時間限制:
1000 ms | 記憶體限制:
65535 kb
難度:2
描述
給出乙個整數n,每次可以移動2個相鄰數字上的數字,最多移動k次,得到乙個新的整數。
求這個新的整數的最大值是多少。
輸入
多組測試資料。
每組測試資料佔一行,每行有兩個數n和k (1 ≤ n≤ 10^18; 0 ≤ k ≤ 100).
輸出 每組測試資料的輸出佔一行,輸出移動後得到的新的整數的最大值。
樣例輸入
1990 1100 0
9090000078001234 6
樣例輸出
91901009907000008001234
** 原創
上傳者
tc_李遠航
思路:在字串上,迴圈在k的範圍內尋找最大值,然後使最大值到每次迴圈開始處,並使k自減去交換的次數。直至k==0;
#include
#include
#include
#include
using namespace std;
int main()
for(int i=0;imaxx)
}
if(book)
k=k-flag+i; // k自減去交換步數;
}
if(k==0)
break; //k==0,結束迴圈;
}
printf("%s\n",a);
memset(a,0,sizeof(a));
}
}
尋找最大數(三)
描述 給出乙個整數n,每次可以移動2個相鄰數字上的數字,最多移動k次,得到乙個新的整數。求這個新的整數的最大值是多少。輸入多組測試資料。每組測試資料佔一行,每行有兩個數n和k 1 n 10 18 0 k 100 輸出每組測試資料的輸出佔一行,輸出移動後得到的新的整數的最大值。樣例輸入1990 1 1...
尋找最大數(三)
時間限制 1000 ms 記憶體限制 65535 kb 難度 2 描述 給出乙個整數n,每次可以移動2個相鄰數字上的數字,最多移動k次,得到乙個新的整數。求這個新的整數的最大值是多少。輸入 多組測試資料。每組測試資料佔一行,每行有兩個數n和k 1 n 10 18 0 k 100 輸出每組測試資料的輸...
尋找最大數(三)
題目描述 給出乙個整數n,每次可以移動2個相鄰數字上的數字,最多移動k次,得到乙個新的整數。求這個新的整數的最大值是多少。輸入多組測試資料。每組測試資料佔一行,每行有兩個數n和k 1 n 10 18 0 k 100 輸出每組測試資料的輸出佔一行,輸出移動後得到的新的整數的最大值。樣例輸入 1990 ...