CF CROC-MBTU 2012, Final Round div 2
2012-11-27 00:22
423 查看
最近状态好差啊。水题都A不掉了。
特别是B题,一个大水题。就是细节需要注意一下,没想到最后没过数据。。。
然后把代码改了一行就A了。。抓狂啊!!
A题。
B,这题是写的又长又臭,估计没人写的比我复杂了,恶心死我了。
C,
D
E
特别是B题,一个大水题。就是细节需要注意一下,没想到最后没过数据。。。
然后把代码改了一行就A了。。抓狂啊!!
A题。
#include <iostream> #include <cstdio> #include <algorithm> #include <string> #include <cmath> #include <cstring> #include <queue> #include <set> #include <vector> #include <stack> #include <map> #include <iomanip> #define PI acos(-1.0) #define Max 2005 #define inf 1<<28 #define LL(x) (x<<1) #define RR(x) (x<<1|1) #define FOR(i,s,t) for(int i=(s);i<=(t);++i) #define ll long long using namespace std; int a[10000]; int b[10000]; void solveA() { int n; cin>>n; int num=0; for(int i=1;i<=n;i++) cin>>a[i]; int xx=0; int pre=0; for(int i=1;i<=n;i++) { if(a[i]<0) { xx++; } if(xx>=3) { b[num++]=i-1-pre; pre+=b[num-1]; xx=1; } if(i==n) { b[num++]=i-pre; } } cout<<num<<endl; for(int i=0;i<num;i++) cout<<b[i]<<" "; cout<<endl; } int main() { solveA(); return 0; }
B,这题是写的又长又臭,估计没人写的比我复杂了,恶心死我了。
#include <iostream> #include <cstdio> #include <algorithm> #include <string> #include <cmath> #include <cstring> #include <queue> #include <set> #include <vector> #include <stack> #include <map> #include <iomanip> #define PI acos(-1.0) #define Max 2005 #define inf 1<<28 #define LL(x) (x<<1) #define RR(x) (x<<1|1) #define FOR(i,s,t) for(int i=(s);i<=(t);++i) #define ll long long using namespace std; char a[200]; string ans[10]; void solveB() { int n; cin>>n; while(n--) { string x; cin>>x; int l=x.length(); int pos=x.find("::"); if(pos==-1) { int num=0; bool flag=0; for(int i=0; i<l; i++) { int index=-1; if(x[i]==':') { if(flag) cout<<":"; flag=1; for(int j=0; j<4-num; j++) cout<<"0"; for(int j=i-num; j<i; j++) cout<<x[j]; num=0; index=i; } else { num++; } } cout<<":"; for(int i=0; i<4-num; i++) cout<<0; for(int i=l-num; i<l; i++) cout<<x[i]; cout<<endl; } else { int sum=0; int bre=-1; int num=0; for(int i=0; i<10; i++)ans[i].clear(); for(int i=0; i<l; i++) { if(i==pos+1) { bre=sum; continue; } if(x[i]==':') { for(int j=0; j<4-num; j++) ans[sum]+='0'; for(int j=i-num; j<i; j++) ans[sum]+=x[j]; sum++; num=0; } else { num++; } } if(pos!=l-2) { for(int j=0; j<4-num; j++) ans[sum]+='0'; for(int j=l-num; j<l; j++) ans[sum]+=x[j]; sum++; } // for(int i=0;i<sum;i++) // cout<<ans[i]<<endl; if(sum) { bool flag=0; for(int i=0; i<sum; i++) { if(i==bre) { for(int j=0; j<8-sum; j++)//就是这里出了问题。 { if(flag)cout<<":";//一开始就这行写错了。。满盘皆输。。。A水题切记要仔细仔细再仔细啊!!! flag=1; cout<<"0000"; } } if(flag) cout<<":"; flag=1; cout<<ans[i]; } if(pos==l-2) for(int i=0; i<8-sum; i++) { if(flag) cout<<":"; flag=1; cout<<"0000"; } cout<<endl; } else { cout<<"0000"; for(int i=0; i<7; i++) cout<<":0000"; cout<<endl; } } } } int main() { solveB(); return 0; }
C,
#include <iostream> #include <cstdio> #include <algorithm> #include <string> #include <cmath> #include <cstring> #include <queue> #include <set> #include <vector> #include <stack> #include <map> #include <iomanip> #define PI acos(-1.0) #define Max 2005 #define inf 1<<28 #define LL(x) (x<<1) #define RR(x) (x<<1|1) #define FOR(i,s,t) for(int i=(s);i<=(t);++i) #define ll long long using namespace std; int a[100005]; vector<int >aa; int num[100005]; void solveC() { int n; int k; cin>>n>>k; for(int i=0;i<n;i++) scanf("%d",&a[i]); for(int i=0;i<n;i++) if(a[i]!=a[i+1]) aa.push_back(a[i]); int dd=aa.size(); //for(int i=0;i<dd;i++) //cout<<aa[i]<<" dddd"; memset(num,0,sizeof(num)); num[aa[0]]++;//num数组记录在这一位去除这个数可以节省的步数 for(int i=1;i<dd;i++) { // if(aa[i]!=aa[i-1]) // num[aa[i]]++; if(aa[i-1]==aa[i+1])//如果这一位的前后两位相等,那么去除这一位可以节省2步 例如2,1,2这时去除中间的1可以节省2步 num[aa[i]]+=2; else num[aa[i]]++;//否则去除这一位只能节省一步 } //for(int i=1;i<=k;i++) //cout<<num[i]<<"ddddd"; int max1=-inf,ans=inf; for(int i=1;i<=k;i++)// 然后找哪一位去除的步数最多,找到字典序最小的即可 { if(num[i]>max1) { max1=num[i]; ans=i; } else if(num[i]==max1) { if(ans>i) ans=i; } } cout<<ans<<endl; } int main() { solveC(); return 0; }
D
E
相关文章推荐
- CF_Croc Champ 2012 - Round 2 (Unofficial Div. 2 Edition)
- CF——Codeforces Round #432 (Div. 2, based on IndiaHacks Final Round 2017)
- [CROC-MBTU 2012, Final Round (Online version, Div. 2)]A. Paper Work
- CROC-MBTU 2012, Elimination Round / 245F Log Stream Analysis (日期处理&二分)
- CROC-MBTU 2012, Elimination Round / 245D Restoring Table (位运算)
- CROC-MBTU 2012, Elimination Round / 245E Mishap in Club (想法题)
- CROC-MBTU 2012, Final Round (Online version, Div. 2)
- CF CROC-MBTU 2012, Elimination Round (ACM-ICPC)
- CROC-MBTU 2012, Final Round (Online version, Div. 2)
- Codeforces Croc Champ 2012 - Round 2 (Unofficial Div. 2 Edition)
- Codeforces Croc Champ 2012 - Round 2 (Unofficial Div. 2 Edition)
- CROC-MBTU 2012, Final Round (Online version, Div. 2) A - Paper Work
- cf Croc Champ 2012 - Round 1 C. Spiral Maximum
- CROC-MBTU 2012, Final Round (Online version, Div. 2) (同是坑......待填..............无视之)
- CROC-MBTU 2012, Final Round (Online version, Div. 2)总结
- CROC-MBTU 2012, Final Round (Online version, Div. 2)笔记
- Intel Code Challenge Final Round (Div. 1 + Div. 2, Combined) E. Goods transportation (非官方贪心解法)
- CF-Codeforces Round #409 (rated, Div. 2, based on VK Cup 2017 Round 2)-C-Voltage Keepsake
- Codeforces Round #432 (Div. 2, based on IndiaHacks Final Round 2017)C. Five Dimensional Points
- Codeforces Round #432 (Div. 2, based on IndiaHacks Final Round 2017) B