首页 > 代码库 > Codeforces B - Tavas and SaDDas
Codeforces B - Tavas and SaDDas
535B - Tavas and SaDDas
方法一:打表大法。
代码1:
#include<bits/stdc++.h> using namespace std; int a[1024]={0,4,7,44,47,74,77,444, 447,474,477,744,747,774,777, 4444,4447,4474,4477,4744,4747,4774, 4777,7444,7447,7474,7477,7744,7747, 7774,7777,44444,44447,44474,44477,44744, 44747,44774,44777,47444,47447,47474,47477, 47744,47747,47774,47777,74444,74447,74474, 74477,74744,74747,74774,74777,77444,77447, 77474,77477,77744,77747,77774,77777,444444, 444447,444474,444477,444744,444747,444774,444777, 447444,447447,447474,447477,447744,447747,447774, 447777,474444,474447,474474,474477,474744,474747, 474774,474777,477444,477447,477474,477477,477744, 477747,477774,477777,744444,744447,744474,744477, 744744,744747,744774,744777,747444,747447,747474, 747477,747744,747747,747774,747777,774444,774447, 774474,774477,774744,774747,774774,774777,777444, 777447,777474,777477,777744,777747,777774,777777, 4444444,4444447,4444474,4444477,4444744,4444747,4444774, 4444777,4447444,4447447,4447474,4447477,4447744,4447747, 4447774,4447777,4474444,4474447,4474474,4474477,4474744, 4474747,4474774,4474777,4477444,4477447,4477474,4477477, 4477744,4477747,4477774,4477777,4744444,4744447,4744474, 4744477,4744744,4744747,4744774,4744777,4747444,4747447, 4747474,4747477,4747744,4747747,4747774,4747777,4774444, 4774447,4774474,4774477,4774744,4774747,4774774,4774777, 4777444,4777447,4777474,4777477,4777744,4777747,4777774, 4777777,7444444,7444447,7444474,7444477,7444744,7444747, 7444774,7444777,7447444,7447447,7447474,7447477,7447744, 7447747,7447774,7447777,7474444,7474447,7474474,7474477, 7474744,7474747,7474774,7474777,7477444,7477447,7477474, 7477477,7477744,7477747,7477774,7477777,7744444,7744447, 7744474,7744477,7744744,7744747,7744774,7744777,7747444, 7747447,7747474,7747477,7747744,7747747,7747774,7747777, 7774444,7774447,7774474,7774477,7774744,7774747,7774774, 7774777,7777444,7777447,7777474,7777477,7777744,7777747, 7777774,7777777,44444444,44444447,44444474,44444477,44444744, 44444747,44444774,44444777,44447444,44447447,44447474,44447477, 44447744,44447747,44447774,44447777,44474444,44474447,44474474, 44474477,44474744,44474747,44474774,44474777,44477444,44477447, 44477474,44477477,44477744,44477747,44477774,44477777,44744444, 44744447,44744474,44744477,44744744,44744747,44744774,44744777, 44747444,44747447,44747474,44747477,44747744,44747747,44747774, 44747777,44774444,44774447,44774474,44774477,44774744,44774747, 44774774,44774777,44777444,44777447,44777474,44777477,44777744, 44777747,44777774,44777777,47444444,47444447,47444474,47444477, 47444744,47444747,47444774,47444777,47447444,47447447,47447474, 47447477,47447744,47447747,47447774,47447777,47474444,47474447, 47474474,47474477,47474744,47474747,47474774,47474777,47477444, 47477447,47477474,47477477,47477744,47477747,47477774,47477777, 47744444,47744447,47744474,47744477,47744744,47744747,47744774, 47744777,47747444,47747447,47747474,47747477,47747744,47747747, 47747774,47747777,47774444,47774447,47774474,47774477,47774744, 47774747,47774774,47774777,47777444,47777447,47777474,47777477, 47777744,47777747,47777774,47777777,74444444,74444447,74444474, 74444477,74444744,74444747,74444774,74444777,74447444,74447447, 74447474,74447477,74447744,74447747,74447774,74447777,74474444, 74474447,74474474,74474477,74474744,74474747,74474774,74474777, 74477444,74477447,74477474,74477477,74477744,74477747,74477774, 74477777,74744444,74744447,74744474,74744477,74744744,74744747, 74744774,74744777,74747444,74747447,74747474,74747477,74747744, 74747747,74747774,74747777,74774444,74774447,74774474,74774477, 74774744,74774747,74774774,74774777,74777444,74777447,74777474, 74777477,74777744,74777747,74777774,74777777,77444444,77444447, 77444474,77444477,77444744,77444747,77444774,77444777,77447444, 77447447,77447474,77447477,77447744,77447747,77447774,77447777, 77474444,77474447,77474474,77474477,77474744,77474747,77474774, 77474777,77477444,77477447,77477474,77477477,77477744,77477747, 77477774,77477777,77744444,77744447,77744474,77744477,77744744, 77744747,77744774,77744777,77747444,77747447,77747474,77747477, 77747744,77747747,77747774,77747777,77774444,77774447,77774474, 77774477,77774744,77774747,77774774,77774777,77777444,77777447, 77777474,77777477,77777744,77777747,77777774,77777777,444444444, 444444447,444444474,444444477,444444744,444444747,444444774,444444777, 444447444,444447447,444447474,444447477,444447744,444447747,444447774, 444447777,444474444,444474447,444474474,444474477,444474744,444474747, 444474774,444474777,444477444,444477447,444477474,444477477,444477744, 444477747,444477774,444477777,444744444,444744447,444744474,444744477, 444744744,444744747,444744774,444744777,444747444,444747447,444747474, 444747477,444747744,444747747,444747774,444747777,444774444,444774447, 444774474,444774477,444774744,444774747,444774774,444774777,444777444, 444777447,444777474,444777477,444777744,444777747,444777774,444777777, 447444444,447444447,447444474,447444477,447444744,447444747,447444774, 447444777,447447444,447447447,447447474,447447477,447447744,447447747, 447447774,447447777,447474444,447474447,447474474,447474477,447474744, 447474747,447474774,447474777,447477444,447477447,447477474,447477477, 447477744,447477747,447477774,447477777,447744444,447744447,447744474, 447744477,447744744,447744747,447744774,447744777,447747444,447747447, 447747474,447747477,447747744,447747747,447747774,447747777,447774444, 447774447,447774474,447774477,447774744,447774747,447774774,447774777, 447777444,447777447,447777474,447777477,447777744,447777747,447777774, 447777777,474444444,474444447,474444474,474444477,474444744,474444747, 474444774,474444777,474447444,474447447,474447474,474447477,474447744, 474447747,474447774,474447777,474474444,474474447,474474474,474474477, 474474744,474474747,474474774,474474777,474477444,474477447,474477474, 474477477,474477744,474477747,474477774,474477777,474744444,474744447, 474744474,474744477,474744744,474744747,474744774,474744777,474747444, 474747447,474747474,474747477,474747744,474747747,474747774,474747777, 474774444,474774447,474774474,474774477,474774744,474774747,474774774, 474774777,474777444,474777447,474777474,474777477,474777744,474777747, 474777774,474777777,477444444,477444447,477444474,477444477,477444744, 477444747,477444774,477444777,477447444,477447447,477447474,477447477, 477447744,477447747,477447774,477447777,477474444,477474447,477474474, 477474477,477474744,477474747,477474774,477474777,477477444,477477447, 477477474,477477477,477477744,477477747,477477774,477477777,477744444, 477744447,477744474,477744477,477744744,477744747,477744774,477744777, 477747444,477747447,477747474,477747477,477747744,477747747,477747774, 477747777,477774444,477774447,477774474,477774477,477774744,477774747, 477774774,477774777,477777444,477777447,477777474,477777477,477777744, 477777747,477777774,477777777,744444444,744444447,744444474,744444477, 744444744,744444747,744444774,744444777,744447444,744447447,744447474, 744447477,744447744,744447747,744447774,744447777,744474444,744474447, 744474474,744474477,744474744,744474747,744474774,744474777,744477444, 744477447,744477474,744477477,744477744,744477747,744477774,744477777, 744744444,744744447,744744474,744744477,744744744,744744747,744744774, 744744777,744747444,744747447,744747474,744747477,744747744,744747747, 744747774,744747777,744774444,744774447,744774474,744774477,744774744, 744774747,744774774,744774777,744777444,744777447,744777474,744777477, 744777744,744777747,744777774,744777777,747444444,747444447,747444474, 747444477,747444744,747444747,747444774,747444777,747447444,747447447, 747447474,747447477,747447744,747447747,747447774,747447777,747474444, 747474447,747474474,747474477,747474744,747474747,747474774,747474777, 747477444,747477447,747477474,747477477,747477744,747477747,747477774, 747477777,747744444,747744447,747744474,747744477,747744744,747744747, 747744774,747744777,747747444,747747447,747747474,747747477,747747744, 747747747,747747774,747747777,747774444,747774447,747774474,747774477, 747774744,747774747,747774774,747774777,747777444,747777447,747777474, 747777477,747777744,747777747,747777774,747777777,774444444,774444447, 774444474,774444477,774444744,774444747,774444774,774444777,774447444, 774447447,774447474,774447477,774447744,774447747,774447774,774447777, 774474444,774474447,774474474,774474477,774474744,774474747,774474774, 774474777,774477444,774477447,774477474,774477477,774477744,774477747, 774477774,774477777,774744444,774744447,774744474,774744477,774744744, 774744747,774744774,774744777,774747444,774747447,774747474,774747477, 774747744,774747747,774747774,774747777,774774444,774774447,774774474, 774774477,774774744,774774747,774774774,774774777,774777444,774777447, 774777474,774777477,774777744,774777747,774777774,774777777,777444444, 777444447,777444474,777444477,777444744,777444747,777444774,777444777, 777447444,777447447,777447474,777447477,777447744,777447747,777447774, 777447777,777474444,777474447,777474474,777474477,777474744,777474747, 777474774,777474777,777477444,777477447,777477474,777477477,777477744, 777477747,777477774,777477777,777744444,777744447,777744474,777744477, 777744744,777744747,777744774,777744777,777747444,777747447,777747474, 777747477,777747744,777747747,777747774,777747777,777774444,777774447, 777774474,777774477,777774744,777774747,777774774,777774777,777777444, 777777447,777777474,777777477,777777744,777777747,777777774,777777777}; int main() { int n; cin>>n; for(int i=1;i<=1024;i++) { if(n==a[i]) { cout<<i<<endl; return 0; } } return 0; }
方法二:用了一种类似于二进制的方法,把4映射成1,把7映射成2,那么幸运数就变成了由1和2组成的类似二进制的结构了,再转换成十进制就是答案了。
代码2:
#include<bits/stdc++.h> using namespace std; #define ll long long #define pb push_back int main() { ios::sync_with_stdio(false); cin.tie(0); int sum=0; string n; cin>>n; for(int i=0;i<n.size();i++) { sum*=2; if(n[i]==‘4‘)sum++; else sum+=2; } cout<<sum<<endl; return 0; }
Codeforces B - Tavas and SaDDas
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。