演算法訓練 jam計數法
時間限制:1.0s 記憶體限制:256.0mb
提交此題 錦囊1 錦囊2
問題描述
jam是個喜歡標新立異的科學怪人。他不使用阿拉伯數字計數,而是使用小寫英文本母計數,他覺得這樣做,會使世界更加豐富多彩。在他的計數法中,每個數字的位數都是相同的(使用相同個數的字母),英文本母按原先的順序,排在前面的字母小於排在它後面的字母。我們把這樣的「數字」稱為jam數字。在jam數字中,每個字母互不相同,而且從左到右是嚴格遞增的。每次,jam還指定使用字母的範圍,例如,從2到10,表示只能使用這些字母。如果再規定位數為5,那麼,緊接在jam數字「bdfij」之後的數字應該是「bdghi」。(如果我們用u、v依次表示jam數字「bdfij」與「bdghi」,則u
/*
這題大概的思路:按例子來說,2 10 5 bdfij,2和10之間對應的字母是bcdefghij
我們給定的字串是bdfij,位數為5,從最後一位開始,也就是j,檢視j的後繼字母也就是k有沒有在b到j之間,
這裡沒有,往前移動一位看i的後繼也就是j有沒有在b到j之間,有,那麼再看這個後繼字母j有沒有在我們給定的字串中存在,
這裡是存在那麼,就還要繼續往前移一位,直到在我們給定的字串中找到乙個這樣的字母,這個字母的後繼字母既存在在b到j之間,
又不在我們給定的字串中,那麼就把這個後繼字母替換掉原來的字母,然後這個字串中被後繼字母替換掉的這個位置的之後
的幾個字元用後繼字母之後的字母替換掉。
*/#include
#include
using
namespace
std;
char arr[30];
char str[30];
int s,t,w;
int len;
int inside(char c)
return0;}
int notinside(char c)
int fun(int i,char c)
cin>>s>>t>>w;
cin>>str;
len=strlen(str);
for(int i=0;i<5;i++)}}
return
0;}
藍橋杯 ALGO 32 演算法訓練 JAM計數法
演算法訓練 jam計數法 時間限制 1.0s 記憶體限制 256.0mb 問題描述 jam是個喜歡標新立異的科學怪人。他不使用阿拉伯數字計數,而是使用小寫英文本母計數,他覺得這樣做,會使世界更加豐富多彩。在他的計數法中,每個數字的位數都是相同的 使用相同個數的字母 英文本母按原先的順序,排在前面的字...
Jam的計數法
題目描述 jam是個喜歡標新立異的科學怪人。他不使用阿拉伯數字計數,而是使用小寫英文本母計數,他覺得這樣做,會使世界更加豐富多彩。在他的計數法中,每個數字的位數都是相同的 使用相同個數的字母 英文本母按原先的順序,排在前面的字母小於排在它後面的字母。我們把這樣的 數字 稱為 jam數字。在 jam數...
Jam的計數法
jam是個喜歡標新立異的科學怪人。他不使用阿拉伯數字計數,而是使用小 寫英文本母計數,他覺得這樣做,會使世界更加豐富多彩。在他的計數法中,每個數字的位數都是相同的 使用相同個數的字母 英文本母按原先的順序,排在前 面的字母小於排在它後面的字母。我們把這樣的 數字 稱為jam數字。在jam數字中,每個...