就是按要求排,然後輸出,只要弄懂優先級別就好了,肯定先比十位數,然後比個位,但是個位數的優先度不一樣,比如3,是和33的優先度一樣的
桶排做法
#includeusing namespace std;
#define sf scanf
#define scf(x) scanf("%d",&x)
#define pf printf
#define prf(x) printf("%d\n",x)
#define mm(x,b) memset((x),(b),sizeof(x))
#define rep(i,a,n) for (int i=a;i=n;i--)
typedef long long ll;
const ll mod=1e9+100;
const double eps=1e-8;
using namespace std;
const double pi=acos(-1.0);
const int inf=0xfffffff;
const int n=1e5;
int a[105];
void read(int &x)
while(s>='0'&&s<='9')
x*=f;
}void print(int x)
if(x>9)
print(x/10);
putchar(x%10+'0');
}int main()
per(i,99,10)
if((i%10)==i/10)
}while(a[100]--)
print(100);
while(a[0]--)
print(0);
return 0;
}
用優先佇列的,這個和sort類似
#include#include#include#include #include#include#include#include#define sf scanf
#define scf(x) scanf("%d",&x)
#define pf printf
#define prf(x) printf("%d\n",x)
#define mm(x,b) memset((x),(b),sizeof(x))
#include#include#define rep(i,a,n) for (int i=a;i=n;i--)
typedef long long ll;
const ll mod=1e9+100;
const double eps=1e-8;
using namespace std;
const double pi=acos(-1.0);
const int inf=0xfffffff;
const int n=1e6+5;
struct node
else if(k<10)
else if(k==100)
else
}friend bool operator
node t;
while(!v.empty())
return 0;
}
小孩的遊戲
實驗任務 一群子在玩,規則是這樣子,給了一些卡片,上面有數字,現在要把卡片按照某一種序列排好,讓這些數字重新鏈結組合成乙個大數,求最大數是什麼。資料輸入 第一行乙個整數 n 接下來n行,每行乙個整數ai,為第 i 張卡片上數值。0 ai 100 資料輸出 輸出重新組合好大數。輸入示例 輸出示例 3 ...
小孩的遊戲 (資料結構作業)
實驗任務 一群孩子在玩遊戲,遊戲規則是這樣子,給了一些卡片,上面有數字,現在要把卡片按照某一種序列排好,讓這些數字重新鏈結組合成乙個大數,求最 大 數是什麼。資料輸入 第一行乙個整數 n 接下來 n行,每行乙個整數 ai,為第 i 張卡片上數值。0 ai 100 資料輸出 輸出重新組合好大數。輸入示...
小孩圍圓圈報數遊戲(C )
描述 n個小孩圍成圈,首先輸入乙個值給max,每個小孩手中有乙個密碼 通過輸入賦值 n個小孩按著順序報數,當報的數比max大,這個小孩出列,並將手中的密碼給max,繼續迴圈,直到最後乙個小孩時,此小孩為獲勝者。要求輸出小孩的出圈順序和最後勝利的小孩。要求寫出詳細 和流程圖。我覺得這個題是跟輸入有關的...