2018.01.26【NOIP普及组】模拟赛D组
2018-01-26 20:01
453 查看
JZOJ NO.1 【普及组模拟赛】手机
代码如下
#include <cstdio> #include <cstring> using namespace std; char s; int ans; short f[27]; int main(){ for (int i=1;i<=18;i++) f[i]=(i%3); f[19]=4; for (int i=1;i<=18;i++) if (!f[i]) f[i]=3; for (int i=20;i<=25;i++) f[i]=((i-1)%3); f[26]=4; for (int i=20;i<=25;i++) if (!f[i]) f[i]=3; freopen("mobile.in","r",stdin); freopen("mobile.out","w",stdout); while ((s=getchar())!='\n'){ if (s==32) ans++; else if (s>96&&s<123) ans+=f[s-96]; } printf("%d",ans); return 0; }
JZOJ NO.2 【普及组模拟赛】游戏
思路:找规律可以发现3的倍数k赢,否则mld赢。
代码如下
#include <cstdio> #include <cstring> #include <cctype> using namespace std; char s; int g; int main(){ freopen("atlantis.in","r",stdin); freopen("atlantis.out","w",stdout); for (int k=1;k<=3;k++){ g=0; s=getchar(); while (!isdigit(s)) s=getchar(); while (isdigit(s)) g=(g+s-48)%3,s=getchar(); if (!(g%3)) printf("King will win.\n"); else printf("MaoLaoDa will win.\n%d\n",(g%3)); } return 0; }
JZOJ NO.3 家族
dfs求有多少个岛屿。
代码如下
#include <cctype> #include <iostream> #include <cstdio> using namespace std; bool g[103][203]; int n,ans=0; string s; void dfs(int x,int y){ g[x][y]=0; if (g[x-1][y]) dfs(x-1,y); if (g[x][y-1]) dfs(x,y-1); if (g[x][y+1]) dfs(x,y+1); if (g[x+1][y]) dfs(x+1,y); } int main(){ freopen("family.in","r",stdin); freopen("family.out","w",stdout); scanf("%d",&n); for (int i=0;i<=n;i++){ getline(cin,s); for (int j=1;j<=s.size();j++) if (islower(s[j-1])) g[i][j]=1; s=""; } for (int i=1;i<=n;i++) for (int j=1;j<=200;j++) if (g[i][j]) ans++,dfs(i,j); cout<<ans; return 0; }
JZOJ NO.4 【普及组模拟赛】作业
f[j]=max(f[j],f[j-w[i]]+c[i])
代码如下
#include <cstdio> #include <algorithm> using namespace std; int m,n,t[501],w[501],f[100001],ans; int main(){ freopen("homework.in","r",stdin); freopen("homework.out","w",stdout); scanf("%d%d",&m,&n); for (int i=1;i<=n;i++) scanf("%d%d",&t[i],&w[i]),ans+=w[i]; for (int i=1;i<=n;i++) for (int j=m;j>=t[i];j--) f[j]=max(f[j],f[j-t[i]]+w[i]); printf("%d",ans-f[m]); return 0; }
相关文章推荐
- 2018.01.26【NOIP普及组】模拟赛D组——游戏(atlantis.pas/cpp)
- 2018.01.26【NOIP普及组】模拟赛D组——家族(family.pas/cpp)
- 2018.01.26【NOIP普及组】模拟赛D组——作业(homework.pas/cpp)
- JZOJ(中山纪中) 2018.01.26【NOIP普及组】模拟赛D组 第一题
- JZOJ(中山纪中) 2018.01.26【NOIP普及组】模拟赛D组 第二题
- JZOJ(中山纪中) 2018.01.26【NOIP普及组】模拟赛D组 第三题
- JZOJ(中山纪中) 2018.01.26【NOIP普及组】模拟赛D组 第四题
- JZOJ1422.2017.03.25【NOIP 普及组】模拟赛C组 T4步行
- JZOJ1490.2017.04.02【NOIP 普及组】模拟赛C组 T2士兵
- 2018.01.21【NOIP普及组】模拟赛D组
- 2018.01.28【NOIP普及组】模拟赛D组
- 2017-07-08【NOIP- 4000 普及组】模拟赛C组-sum-题解
- 2017.08.15【NOIP 普及组】模拟赛C组 猴子拆房
- 2018.01.27【NOIP普及组】模拟赛D组
- 纪中训练 day5 【NOIP普及组】模拟赛D组 解题报告
- 【有奖】NOIP普及组模拟赛 个人邀请赛 乐多赛
- 2017.03.25【NOIP 普及组】模拟赛C组 排序(sort) 题解
- 2017.04.02【NOIP 普及组】模拟赛C组 T1:区间
- JZOJ1491.2017.04.02【NOIP 普及组】模拟赛C组 T3打鼹鼠