小明种苹果(续)第十七次CCF认证

题目

原题链接







](http://118.190.20.162/view.page?gpid=T93)


很高心,在现在CCF CSP可以下载自己当时的答卷了,也就是自己当时提交的代码,下面就贴上自己认证时写的代码

// INFO BEGIN
//
// User = 201910014101(赵**)
// Group = C/C++
// Problem = 小明种苹果(续)
// Language = DCPP
// SubmitTime = 2019-09-15 16:54:19
//
// INFO END #include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
typedef long long ll;
const int maxn=1e4+7;
struct node
{
bool drop;
ll init, sum;
}ap[maxn];
int n, m;
int main()
{
ll tmp;
scanf("%d", &n);
for(int i=1; i<=n; i++)
{
scanf("%d", &m);
for(int j=1; j<=m; j++)
{
scanf("%lld", &tmp);
if(tmp<=0)
{
ap[i].sum+=(-tmp);
}
else if(tmp>0 && j!=1)
{ if(ap[i].init-ap[i].sum!=tmp)
ap[i].drop=true;
ap[i].init=tmp;
ap[i].sum=0;
}
else
{
ap[i].drop=false;
ap[i].init=tmp;
ap[i].sum=0;
}
}
}
ll res=0;
int pre, next, drops=0, team=0;
for(int i=1; i<=n; i++)
{
res+=ap[i].init-ap[i].sum;
if(ap[i].drop)
{
drops++;
pre=i-1;
next=i+1;
if(pre<=0) pre=n;
if(next>=n+1) next=1;
if(ap[pre].drop && ap[next].drop)
{
team++;
}
}
}
printf("%lld %d %d\n", res, drops, team);
return 0;
}

update:2019.12.11 16:54

解题思路

进行模拟即可

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
typedef long long ll;
const int maxn=1007;
struct node
{
ll init, dsum;
bool drop; //用来记录这棵树是否发生苹果掉落
}a[maxn];
int n, m;
int main()
{
ll tmp;
scanf("%lld", &n);
for(int i=1; i<=n; i++)
{
scanf("%d", &m);
for(int j=1; j<=m; j++)
{
scanf("%lld", &tmp);
if(j==1) //第一次要进行初始化
{
a[i].init=tmp;
a[i].drop=false;
continue;
}
if(tmp>0)
{
if(a[i].init!=tmp) //判断是否发生苹果掉落
{
a[i].dsum+=a[i].init-tmp;
a[i].init=tmp;
a[i].drop=true;
}
}
else
{
a[i].init += tmp; //注意这个tmp是非正数
}
}
}
ll sum=0, nums=0, ans=0;
for(int i=1; i<=n; i++)
{
sum+=a[i].init;
if(a[i].drop)
nums++;
}
printf("%lld %lld ", sum, nums);
for(int i=1; i<=n; i++)
{
if(a[i].drop)
{
if(i==1 && a[n].drop && a[i+1].drop)
ans++;
else if(i==n && a[i-1].drop && a[1].drop)
ans++;
else if(a[i-1].drop && a[i+1].drop)
ans++;
}
}
printf("%lld\n", ans);
return 0;
}

小明种苹果(续)第十七次CCF认证的更多相关文章

  1. csp201909-2小明种苹果续

    /* 定义输入N 二维数组 输出T总数 D掉落棵树 E掉落组数 定义last记录上次掉落的编号,flag=1表示两次连续掉落,不掉落归零 spec=1表示1 2都掉落了,spec=2表示只有1掉落 对 ...

  2. CCF201909-2小明种苹果(续)

    解题思路:解题思路很简答,就是用数组将数据存起来然后再进行统计,具体思路就见代码注释,记录这道题的是为了警示自己好好审题啊...... 审题有问题,写题火葬场啊.......以为每棵树就疏一次果,把D ...

  3. 201909-2 小明种苹果(续) Java

    思路: 待补充 import java.util.*; public class Main { public static void main(String[] args) { Scanner sc ...

  4. 201909-1 小明种苹果 Java

    思路: 保存掉落的苹果总数,和树是第几棵即可 import java.io.BufferedReader; import java.io.IOException; import java.io.Inp ...

  5. CCF201909-1小明种苹果

    解题思路:定义一个二维数组来存放输入的信息,第一列用来存放所有果树的初始值,然后遍历数组.具体思路见代码注释. 第一遍提交得了80分,看了半天才明白了原因,快被自己蠢死...... 定义数组应该为a[ ...

  6. nyoj 50-爱摘苹果的小明 (比较)

    50-爱摘苹果的小明 内存限制:64MB 时间限制:1000ms Special Judge: No accepted:10 submit:15 题目描述: 小明家的院子里有一棵苹果树,每到秋天树上就 ...

  7. 小明有5本新书,要借给A、B、C三位小朋友 若每人每次只能借一本,则可以有多少种不同的借法?

    /* 问题描述: 小明有5本新书,要借给A.B.C三位小朋友, 若每人每次只能借一本,则可以有多少种不同的借法? 问题分析: 本题属于数学当中最常见的排列组合问题, 即求从5个数当中取3个不同数的排列 ...

  8. ACM 擅长排列的小明

    擅长排列的小明 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 小明十分聪明,而且十分擅长排列计算.比如给小明一个数字5,他能立刻给出1-5按字典序的全排列,如果你想 ...

  9. ACM 懒省事的小明

    懒省事的小明 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述       小明很想吃果子,正好果园果子熟了.在果园里,小明已经将所有的果子打了下来,而且按果子的不同种 ...

随机推荐

  1. Python---webserver项目

    # HTTP项目实战 - 深入理解HTTP协议 - 模拟后台服务程序基本流程和大致框架 - 每一个步骤一个文件夹 - 图解http协议,图解tcp/ip协议 # v01-验证技术 - 验证socket ...

  2. 两种常用的数据交换格式:XML和JSON

    不同编程语言之间的数据传输,需要一种通用的数据交换格式,它需要简洁.易于数据储存.快速读取,且独立于各种编程语言.我们往往传输的是文本文件,比如我们都知道的csv(comma seperated va ...

  3. 【leetcode】1213.Intersection of Three Sorted Arrays

    题目如下: Given three integer arrays arr1, arr2 and arr3 sorted in strictly increasing order, return a s ...

  4. springboot结合jsp页面详解

    第一次写博客,其实就是为了约束我自己,写的不一定对,互相借鉴吧!有不对的地方请多多指正,谢谢! 今天我们来看一下springboot结合jsp页面的具体操作: 1.首先我们先看一下目录结构 由上面我们 ...

  5. 3. ClustrixDB 操作

    测试数据库 一. 测试分片,存储信息 测试前: clxm@p2cn1uclx101m_10.248.100.241 /data]$ clx statCluster Name: cle69e350c2c ...

  6. Python 爬虫十六式 - 第五式:BeautifulSoup-美味的汤

    BeautifulSoup 美味的汤 学习一时爽,一直学习一直爽!    Hello,大家好,我是Connor,一个从无到有的技术小白.上一次我们说到了 Xpath 的使用方法.Xpath 我觉得还是 ...

  7. 157. [USACO Nov07] 奶牛跨栏(第三次考试大整理)

    157. [USACO Nov07] 奶牛跨栏 输入文件:hurdles.in   输出文件:hurdles.out   简单对比 时间限制:1 s   内存限制:128 MB 译 by CmYkRg ...

  8. centos7 安装 chrome

    1. 配置yum源 在目录 /etc/yum.repos.d/ 下新建文件 google-chrome.repo cd /etc/yum.repos.d/ vim google-chrome.repo ...

  9. 如何解决两个相邻的span中间有空隙

    span中间不要有换行.或者空格 或者在样式上加上float:left

  10. MySQL中concat以及group_concat的使用

    摘自:https://www.jianshu.com/p/43cb4c5d33c1 说明: 本文中使用的例子均在下面的数据库表tt2下执行: 一.concat()函数 1.功能:将多个字符串连接成一个 ...