9時だよ!全員集合!
ARC初回レーテッドコンテストの結果は・・・
3完34位タイでした。
あ、ICPC方式ね(たぶん
A
やるだけ
#include <cstdio> int main() { int y; scanf("%d",&y); if (y%100==0&&y%400!=0) puts("NO"); else if (y%4==0) puts("YES"); else puts("NO"); }
B
「暦」で検索
#include <cstdio> int y, m, d; int day1[12]={31,28,31,30,31,30,31,31,30,31,30,31}; int day2[12]={31,29,31,30,31,30,31,31,30,31,30,31}; bool isreep(int y) { if (y%100==0&&y%400!=0) return false; if (y%4==0) return true; return false; } void next() { d++; if (isreep(y)) { if (day2[m-1]>=d) return; m++; d=1; if (m==13) { m=1; y++; } } else { if (day1[m-1]>=d) return; m++; d=1; if (m==13) { m=1; y++; } } } bool ok() { if ((double)y/(double)m/(double)d==y/m/d) return true; return false; } int main() { scanf("%d/%d/%d",&y,&m,&d); while (!ok()) next(); printf("%d/%02d/%02d\n",y,m,d); }
C
16通り書き出すだけ
#include <cstdio> #include <cstring> #include <iostream> #include <algorithm> using namespace std; string lr[16]={ "AA","BB","XX","YY", "AB","BA","XY","YX", "AX","XA","BX","XB", "AY","YA","BY","YB"}; bool used[1000]; int main() { int n; scanf("%d",&n); string str; cin>>str; int res=10000; for (int p=0; p<16; p++) { for (int q=0; q<16; q++) { if (p==q) continue; string x="", y=""; for (int i=0; i<n; i++){ if (lr[p][0]!=str[i]) x+=str[i]; else { if (i+1<n&&lr[p][1]==str[i+1]) { x+='L'; i++; } else x+=str[i]; } } int len=x.length(); for (int i=0; i<len; i++) { if (lr[q][0]!=x[i]) y+=x[i]; else { if (i+1<len&&lr[q][1]==x[i+1]) { y+='R'; i++; } else y+=x[i]; } } res=min(res, (int)y.length()); } } printf("%d\n",res); }
D
糞むずい
結果
#AtCoderこわちかよらんとこ