我来推荐一个好玩的东西了,IPSC,第一次参加,原来一直不知道这个比赛,貌似很久了,12点结束的,今天出去玩,10点半开始做的,画了半个多小时时间看懂了是怎么叫,原来是给你输入数据,你只需要跑程序,然后测试你的输出,就是只用提交输出数据即可,真的很好,貌似不用担心TLE了,比赛也是分大数据跟小数据的
A题 A+B
链接:http://ipsc.ksp.sk/2015/real/problems/a.html
小数据:
1 #include<iostream> 2 #include<fstream> 3 #include<cstdio> 4 #include<cstring> 5 #include<cmath> 6 #include<string> 7 #include<vector> 8 #include<stack> 9 #include<algorithm> 10 using namespace std; 11 string s; 12 int main() 13 { 14 ifstream fin; 15 fin.open("a1.in"); 16 ofstream fout; 17 fout.open("b.out"); 18 int t; 19 fin>>t; 20 while(t--) 21 { 22 23 int cnt; 24 fin>>s; 25 cnt=0; 26 int n=s.length(); 27 int a[n]; 28 for(int i=0;i<n;i++) 29 a[i]=s[i]-‘0‘; 30 if(n>=3) 31 { 32 sort(a,a+3); 33 cnt+=a[2]*10+a[1]+a[0]; 34 } 35 else 36 { 37 if(n>=2) 38 { 39 sort(a,a+2); 40 cnt+=a[1]+a[0]; 41 } 42 else 43 cnt=s[0]-‘0‘; 44 } 45 fout<<cnt<<endl; 46 } 47 return 0; 48 }
大数据:
1 #include<iostream> 2 #include<fstream> 3 #include<cstdio> 4 #include<cstring> 5 #include<string> 6 #include<cmath> 7 #include<vector> 8 #include<algorithm> 9 using namespace std; 10 const int maxn=17; 11 int dp[2][maxn]; 12 int sum(int a[],int x,int y) 13 { 14 int cnt=a[y]; 15 for(int i=y-1;i>=x;i--) 16 { 17 cnt*=10; 18 cnt+=a[i]; 19 } 20 return cnt; 21 } 22 string s; 23 int main(void) 24 { 25 ifstream fin; 26 fin.open("a2.in"); 27 ofstream fout; 28 fout.open("a2.out"); 29 int t; 30 fin>>t; 31 while(t--) 32 { 33 int n; 34 fin>>s; 35 n=s.length(); 36 int a[n]; 37 memset(a,0,sizeof(a)); 38 for(int i=0;i<n;i++) 39 a[i]=s[i]-‘0‘; 40 memset(dp,0,sizeof(dp)); 41 int mx=0; 42 for(int i=n-2;i>=0;i--) 43 { 44 int cnt=0; 45 cnt+=sum(a,0,i)+sum(a,i+1,n-1); 46 if(cnt>mx) 47 mx=cnt; 48 } 49 fout<<mx<<endl; 50 } 51 return 0; 52 }
写完这个SB题比赛就结束了,后面的题目等赛后提交开放以后在更新了
时间: 2024-12-21 20:24:18