P1181 數列分段Section I

来源:http://www.cnblogs.com/zwfymqz/archive/2017/05/13/6850429.html
-Advertisement-
Play Games

題目描述 對於給定的一個長度為N的正整數數列A[i],現要將其分成連續的若幹段,並且每段和不超過M(可以等於M),問最少能將其分成多少段使得滿足要求。 輸入輸出格式 輸入格式: 輸入文件divide_a.in的第1行包含兩個正整數N,M,表示了數列A[i]的長度與每段和的最大值,第2行包含N個空格隔 ...


題目描述

對於給定的一個長度為N的正整數數列A[i],現要將其分成連續的若幹段,並且每段和不超過M(可以等於M),問最少能將其分成多少段使得滿足要求。

輸入輸出格式

輸入格式:

輸入文件divide_a.in的第1行包含兩個正整數N,M,表示了數列A[i]的長度與每段和的最大值,第2行包含N個空格隔開的非負整數A[i],如題目所述。

輸出格式:

輸出文件divide_a.out僅包含一個正整數,輸出最少劃分的段數。

輸入輸出樣例

輸入樣例#1:
5 6
4 2 4 5 1
輸出樣例#1:
3

說明

對於20%的數據,有N≤10;

對於40%的數據,有N≤1000;

對於100%的數據,有N≤100000,M≤10^9,M大於所有數的最小值,A[i]之和不超過109。

將數列如下劃分:

[4][2 4][5 1]

第一段和為4,第2段和為6,第3段和為6均滿足和不超過M=6,並可以證明3是最少劃分的段數。

 

暴力枚舉只要不大於就不分!

 

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cmath>
 4 using namespace std;
 5 const int MAXN=100001;
 6 int a[MAXN];
 7 int ans=0;
 8 int read(int &n)
 9 {
10     char ch=' ';int q=0,w=1;
11     for(;(ch!='-')&&((ch<'0')||(ch>'9'));ch=getchar());
12     if(ch=='-')w=-1,ch=getchar();
13     for(;ch>='0' && ch<='9';ch=getchar())q=q*10+ch-48;
14     n=q*w;    return n;
15 }
16 int main()
17 {
18     int n,m;
19     scanf("%d%d",&n,&m);
20     for(int i=1;i<=n;i++)
21         read(a[i]);
22     int now=0;
23     for(int i=1;i<=n;i++)
24     {
25         now=now+a[i];
26         if(now>m)
27         {
28             now=0;
29             ans++;
30             i--;
31         }
32         
33     }
34     printf("%d",ans+1);
35     return 0;
36 }

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 開始第二模塊的學習: 裝飾器 : 描述: 裝飾器原則: 1、不能修改被裝飾的函數的源代碼 2、不能修改裝飾的函數的調用方試 實現裝飾器的需要: 高階函數+嵌套函數=裝飾器 高階函數: 類型I:將函數做為實參的函數,可以稱為高階函數 類型II:返回值中包含函數名的函數,也可以稱為高階函數 嵌套函數: ...
  • Nginx具有反向代理(註意和正向代理的區別)和負載均衡等特點。 這次Nginx安裝在 192.168.1.108 這台linux 機器上。安裝Nginx 先要裝openssl庫,gcc,PCRE,zlib庫等。 Tomcat 安裝在192.168.1.168 和 192.168.1.178 這兩台 ...
  • 多線程 多線程是我們開發人員經常提到的一個名詞。為什麼會有多線程的概念呢?我們的電腦有可能會有多個cpu(或者CPU有多個內核)這就產生了多個線程。對於單個CPU來說,由於CPU運算很快,我們在電腦上運行多個軟體時,每個軟體在CPU上運行很短的時間就會切換成其他軟體。由於來回切換的時間很短,我們感覺 ...
  • java中常用的包、類、以及包中常用的類、方法、屬性 常用的包 java.io.*; java.util.*; java.lang.*; java.math.*; java.sql.*; java.text.*; java.awt.*; javax.swing.*; 包名 介面 類 方法 屬性 ja ...
  • 前面一篇文章講瞭如何快速搭建一個ActiveMQ的示常式序,ActiveMQ是JMS的實現,那這篇文章就再看下另外一種消息隊列AMQP的代表實現RabbitMQ的簡單示例吧。在具體講解之前,先通過一個圖來概覽下: 1.添加Maven依賴 2.Spring配置文件中添加rabbitmq相關配置 1)消 ...
  • java產生隨機數的幾種方式 一.在j2se里我們可以使用Math.random()方法來產生一個隨機數,這個產生的隨機數是0-1之間的一個double,用時需要int強制轉換,我們可以把他乘以一定的數,比如說乘以100,他就是個100以內的隨機,這個在j2me中沒有。 java.util.Rand ...
  • title: Servlet之JSP tags: [] notebook: javaWEB JSP是什麼 ? JSP就是Servlet,全名是"JavaServer Pages" 。因為Servlet不適合設置html響應體,需要大量的 ,而和html是靜態頁面,不能包含動態信息。JSP完美的解決了 ...
  • java中常用的包、類、以及包中常用的類、方法、屬性 常用的包 java.io.*; java.util.*; java.lang.*; java.math.*; java.sql.*; java.text.*; java.awt.*; javax.swing.*; 包名 介面 類 方法 屬性 ja ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...