Codeforces Round #142 (Div. 2)
2014-04-08 13:11
369 查看
A. Dragons
B.
T-primes
C.
Shifts
#include <iostream> #include <algorithm> using namespace std; struct dragon { int x; int y; }d[1005]; bool cmp(dragon a,dragon b) { return a.x<b.x; } int main() { int s,n,i; cin>>s>>n; for(i=0;i<n;i++) cin>>d[i].x>>d[i].y; sort(d,d+n,cmp); for(i=0;i<n;i++) { if(s>d[i].x) s+=d[i].y; else {cout<<"NO"<<endl;return 0;} } cout<<"YES"<<endl; return 0; }
B.
T-primes
#include <iostream> #include <cstdio> #include <cmath> #include <cstring> using namespace std; int sub[1000002]; int main() { long long a,b; int i,j,n; memset(sub,0,sizeof(sub)); for(i=2;i<=1e6;i++) { if(sub[i]==0) for(j=i+i;j<=1e6;j+=i) sub[j]=1; } cin>>n; while(n--) { cin>>a; b=sqrt(a); if(sub[b]==0&&b*b==a&&a>1) cout<<"YES"<<endl; else cout<<"NO"<<endl; } return 0; }
C.
Shifts
#include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int MAXN = 105, MAXM = 10005; const int INF = 999999999; int N, M, d[MAXN][MAXM]; char mat[MAXN][MAXM]; int main() { scanf("%d%d", &N, &M); for (int i = 1; i <= N; i++) scanf("%s", mat[i]+1); fill(d[0]+1, d[0]+1+M, 0); bool flag = 1; for (int i = 1; i <= N; i++) { flag = 0; for (int j = 1; j <= M; j++) { d[i][j] = INF; if (mat[i][j] == '1') flag = 1; } if (!flag) break; int nst; for (int j = 1; j <= M; j++) if (mat[i][j] == '1') nst = j; nst -= M; for (int j = 1; j <= M; j++) { if (mat[i][j] == '1') nst = j; d[i][j] = min(d[i][j], d[i-1][j]+j-nst); } for (int j = M; j >= 1; j--) if (mat[i][j] == '1') nst = j; nst += M; for (int j = M; j >= 1; j--) { if (mat[i][j] == '1') nst = j; d[i][j] = min(d[i][j], d[i-1][j]+nst-j); } } int ans = INF; for (int j = 1; j <= M; j++) ans = min(ans, d [j]); if (flag) printf("%d\n", ans); else printf("-1\n"); return 0; }
相关文章推荐
- Codeforces Round #142 (Div. 2)
- Codeforces Round #142 (Div. 2)
- Codeforces Round #142 (Div. 2) 解题报告
- Codeforces Round #142 (Div. 2) B - T-primes
- Codeforces Round #142 (Div. 2)——B
- Codeforces Round #142 (Div. 1) C. Triangles
- Codeforces Round #142 (Div. 2) C
- Codeforces Round #142 (Div. 2) E. Triangles
- 【CodeForce】Codeforces Round #142 (Div. 2) A B C
- 解题报告:Codeforces Round #142 (Div. 1) C. Triangles (思维好题)
- Codeforces Round #142 (Div. 2)B. T-primes
- Shifts-Codeforces Round #142 (Div. 2) C (矩阵)
- Codeforces Round #142 (Div. 2) C. Shifts
- Codeforces Round #142 (Div. 1) (完全)
- Codeforces Round #142 (Div. 1) C. Triangles
- Codeforces Round #142 (Div. 1) C. Triangles 数学,完全图,统计贡献 2017/1/25
- Codeforces Round #142 (Div. 2)
- Codeforces Round #142 (Div. 2) 解题报告
- Codeforces Round #142 (Div. 1), problem: (C) Triangles
- Codeforces Round #142 (Div. 2) C. Shifts