【链接】 我是链接,点我呀:)

【题意】

在这里输入题意

【题解】

//从大到小枚举第i(1..len1)位
//剩余的数字从小到大排序。
//看看组成的数字是不是小于等于b
//如果是的话。
//说明第i位就是选这个数字了。
//接下来枚举下一位。

【代码】

#include <bits/stdc++.h>
#define ll long long
using namespace std; const int N = 20; string s1,s2;
int len1,len2;
int bo[N],a[N],b[N];
vector<int> v,vans; bool get_ans(){
for (int i = 0;i <(int) vans.size();i++)
v[i+1] = vans[i]; int nn = (int) vans.size();
for (int i = 0;i<=9;i++)
for (int j = 1;j <= bo[i];j++)
v[++nn] = i; for (int i = 1;i <= len1;i++)
if (v[i]!=b[i] && v[i]>b[i]) return false;
else if (v[i]!=b[i] && v[i]<b[i])return true;
return true;
} int main(){
#ifdef LOCAL_DEFINE
freopen("rush_in.txt", "r", stdin);
#endif
ios::sync_with_stdio(0),cin.tie(0);
cin >> s1 >> s2;
len1 = s1.size(),len2 = s2.size(); if (len1<len2){
sort(s1.begin(),s1.end());
reverse(s1.begin(),s1.end());
cout <<s1<<endl;
return 0;
} v.resize(len1+1);
//len1==len2;
for (int i = 0;i < len1;i++)
a[i+1] = s1[i]-'0';
for (int i = 0;i < len2;i++)
b[i+1] = s2[i]-'0'; for (int i = 1;i <= len1;i++) bo[a[i]]++; bool haved = 0; for (int i = 0;i < len1;i++){
for (int j = 9;j>=0;j--)
if (bo[j]){
int k = s2[i]-'0';
if (j<=k || haved){
bo[j]--;
vans.push_back(j);
if (get_ans()){
if (j<k) haved =1;
break;
}
vans.pop_back();
bo[j]++;
}
}
} for (int i = 0; i< (int) vans.size();i++)
cout <<vans[i]; //从大到小枚举第i(1..len1)位
//剩余的数字从小到大排序。
//看看组成的数字是不是小于等于b
//如果是的话。
//说明第i位就是选这个数字了。
//接下来枚举下一位。
return 0;
}

最新文章

  1. nodejs笔记2
  2. Yii2命名规则
  3. 利用Ramdisk为Firefox 加速
  4. JSP内置对象详解
  5. javascript中的sort()方法
  6. 轻量级的中文分词工具包 - IK Analyzer
  7. Effective Java从零开始 - 就是爱Java
  8. kali Rolling安装之后的一些常用配置总结
  9. The List ADT
  10. 从实践的角度理解cookie的几个属性
  11. Tuxedo:Tuxedo支持的分布式通信方式
  12. UNIX网络编程——客户/服务器程序设计示范(六)
  13. 有关@NgModule装饰器巩固
  14. UIScrollView的AutoLayout约束
  15. Shell 解释器初识
  16. Java7/8 中 HashMap 和 ConcurrentHashMap的对比和分析
  17. Windows下用户变量和系统变量
  18. 自定义 Mysql 类 与 自定义 异常类
  19. iptables简单应用
  20. [zjoi2010]cheese

热门文章

  1. react 中间件相关的一些源码解析
  2. 新机器的vim配置
  3. PKI 信息安全三大特性
  4. HDU 4937 Lucky Number 搜索
  5. IDEA修改当前工程jdk版本
  6. mysql(for update)悲观锁总结与实践
  7. Java接口源码--System和应用程序进程间通信
  8. hdu1280 前m大的数(数组下标排序)
  9. Eclipse下面的Maven管理的SSH框架整合(Struts,Spring,Hibernate)
  10. android selector设置button点击效果(具体)以及常见问题