Codeforces Round #231 (Div. 2) problem A - Counting Sticks solution : http://ideone.com/mx3VZO
#include <iostream> #include <cstdio> #include <cstring> using namespace std; int main() { int a, b, c; a=b=c=0; char s[1000]; scanf("%s", s); int i=0; for(i=0; s[i]!='+'; i++) a++; for(i++; s[i]!='='; i++) b++; for(i++; i<strlen(s); i++) c++; if(a+b==c) printf("%s", s); else if(c>1 && a+b==c-2) { for(i=0; i<a+1; i++) printf("|"); printf("+"); for(i=0; i<b; i++) printf("|"); printf("="); for(i=0; i<c-1; i++) printf("|"); } else if((a>1 || b>1) && a+b==c+2) { if(a>1) { for(i=0; i<a-1; i++) printf("|"); printf("+"); for(i=0; i<b; i++) printf("|"); printf("="); for(i=0; i<c+1; i++) printf("|"); } else { for(i=0; i<a; i++) printf("|"); printf("+"); for(i=0; i<b-1; i++) printf("|"); printf("="); for(i=0; i<c+1; i++) printf("|"); } } else printf("Impossible"); return 0; }
No comments:
Post a Comment