AOJ 0500 - Card Game, 0501 - Data Conversion
最近書いて無いからって書いたら,1時を回っていたorz.
この時間帯のツイートにはTopCoder成分が多いんですね.
TopCoder...やりたいけど,英語ができない.
AOJ 0500 - Card Game
通常
#include <iostream> using namespace std; int main(){ int n; while(cin >> n,n){ int a,b,ar = 0,br = 0; while(n--){ cin >> a >> b; ar += a>b?a+b:a==b?a:0; br += b>a?a+b:a==b?b:0; } cout << ar << " " << br << endl; } return 0; }
ショート
#include<cstdio> main(){ int n; while(scanf("%d",&n),n){ int a,b,c = 0,d = 0; while(n--){ scanf("%d%d",&a,&b); c+=a>b?a+b:a==b?a:0; d+=b>a?a+b:a==b?b:0; } printf("%d %d\n",c,d); } }
AOJ 0501 - Data Conversion
通常
#include <iostream> using namespace std; int main(){ int n,m; while(cin>>n,n){ char a,b,blist[62] = {0}; while(n--){ cin >> a >> b; if(a >= 97 && a <= 122)blist[a - 97] = b; if(a >= 65 && a <= 90)blist[a - 39] = b; if(a >= 48 && a <= 57)blist[a + 4] = b; } cin >> m; string s = ""; while(m--){ cin >> a; if(a >= 97 && a <= 122)b = blist[a - 97]; if(a >= 65 && a <= 90)b = blist[a - 39]; if(a >= 48 && a <= 57)b = blist[a + 4]; if(b == 0)b = a; s+=b; } cout << s << endl; } }
ショート
#include<iostream> using namespace std; main(){ int n,m; while(cin>>n,n){ char a,b,l[62] = {0}; while(n--) cin >> a >> b,l[a > 96?a - 97:a > 64?a - 39:a > 47?a + 4:0] = b; cin >> m; string s = ""; while(m--){ cin >> a;b = l[a > 96?a - 97:a > 64?a - 39:a > 47?a + 4:0];if(b==0)b = a;s+=b;} cout << s << endl; } }