4개의 댓글이 있습니다.
-
-
hyunhwan -
다들 즐겁게 대회를 하셨는지는 궁금하네요.
방금 저와 같이 참여를 했던 KCM느님께서 대회때 시간이 조금 늦어서 제출하지 못했던 D2 답안이 맞았음을 알리시기에 대회 당시에 작성하였던 해법을 아래에 첨부해봅니다
#include <stdio.h> #include <algorithm> #include <memory.h> unsigned short dt[1<<26][27]; char val[2600]; int modfac[27]; int main() { int T; scanf("%d",&T); modfac[0] = 1; for(int i = 1; i <= 26; i++) { modfac[i] = modfac[i-1] * i % 65521; } while(T-->0) { fprintf(stderr,"%d process\n", T); scanf("%s",val); memset(dt,0,sizeof(dt)); dt[0][0] = 1; int ans = dt[(1<<26)-1][0]; for(int i = 0; val[i] != '\0'; i++) { char cc = 1 + (val[i] - 'a'); int curval = (1<< (val[i] - 'a')); int li = i%2, ci = 1-li; for(int j = 0; j < (1<<26); j++) { if (j & curval) continue; int other = j | curval; dt[other][0] = (((int)dt[other][0] + (int)dt[j][0] - (int)dt[j][cc]) % 65521 + 65521)%65521; dt[j][cc] = dt[j][0]; } ans = dt[(1<<26)-1][0]; } ans = modfac[26] - ans; ans %= 65521; ans += 65521; ans %= 65521; printf("%d\n", ans); } return 0; }
11년 전 link
-
-
-
imyoyo -
저희팀 솔루션 몇개 올렸습니다.
https://github.com/bottomcoder/tc/tree/master/IPSC2013/solutions
11년 전 link
-
-
정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
hyunhwan
Internet Problem Solving Contest 2013가 종료되었습니다.
올해도 예년처럼 많은 사람들에게 즐겁고~~빡치게 하는~~ 좋은 대회가 아니었나 싶네요.
방금 공개된 해법이 담긴 booklet과 한국팀의 순위를 첨부해봅니다.
문제, 해법
링크
한국팀 순위
11년 전