改数(洛谷 U5398)
题目背景
又是一年NOIP,科学馆的五楼:“我们看下这道题,我们来模拟一下…2,3,5,7,12…这其实就是一个a[i+1]-a[i]=i的序列……”那熟悉的凌波教鞭,熟悉的憨厚的声音,那熟悉的...哦,还有那熟悉的来自未来某位神牛的发言:“老师,好像有个数写错了……”
题目描述
给出一个长度为n的整数序列a,你能改动最少的数,使之满足a[i+1]-a[i]=i(1<=i<n)么?
输入输出格式
输入格式:
输入第一行包含一个整数n
第二行包含n个整数,分别表示a[1]到a[n]。
输出格式:
输出一个整数,表示最少改多少个数。
输入输出样例
5
1 2 4 5 11
1
说明
对于30%的数据N<=1000
对于100%的数据1<=N<=100000
输入的其他数据的绝对值均小于等于109
/*
一种想法是可以枚举每一个数,将它固定,然后根据固定的数求出别的数,更新答案;这样是O(n^2)的;根据这个理论,可以将每一个数固定,然后直接求出a1,看那个a1相同的次数最多,那个就是答案。
*/
#include<cstdio>
#include<algorithm>
#include<iostream>
#define N 100010
using namespace std;
int a[N],num[N],zh1[N],n;
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
{
scanf("%d",&a[i]);
num[i]=num[i-]+i-;
zh1[i]=a[i]-num[i];
}
sort(zh1+,zh1+n+);
int tot=,p=,ans;
for(int i=;i<=n;i++)
if(zh1[i]!=zh1[i-])
{
if(p>tot)tot=p,ans=zh1[i-];
p=;
}
else p++;
if(p>tot)ans=zh1[n];
tot=;
for(int i=;i<=n;i++)
if(a[i]!=ans+num[i])tot++;
printf("%d",tot);
return ;
}
改数(洛谷 U5398)的更多相关文章
- 卡特兰数 洛谷P1641 [SCOI2010]生成字符串
卡特兰数 参考博客 介绍 卡特兰数为组合数学中的一种特殊数列,用于解决一类特殊问题 设\(f(n)\)为卡特兰数的第n项 其通项公式为 \[f(n)=\frac{2n\choose n}{n+1} \ ...
- 方格取数洛谷p1004
题目描述 设有N*N的方格图(N<=9),我们将其中的某些方格中填入正整数,而其他的方格中则放 人数字0.如下图所示(见样例): A 0 0 0 0 0 0 0 0 0 0 13 0 0 6 0 ...
- P1004 方格取数-洛谷luogu-dp动态规划
题目描述 设有N \times NN×N的方格图(N \le 9)(N≤9),我们将其中的某些方格中填入正整数,而其他的方格中则放入数字00.如下图所示(见样例): A 0 0 0 0 0 0 0 0 ...
- AC日记——方格取数 洛谷 P1004
题目描述 设有N*N的方格图(N<=9),我们将其中的某些方格中填入正整数,而其他的方格中则放 人数字0.如下图所示(见样例): A 0 0 0 0 0 0 0 0 0 0 13 0 0 6 0 ...
- NOIP2000方格取数(洛谷,动态规划递推)
先上题目: P1004 方格取数 下面上ac代码: ///如果先走第一个再走第二个不可控因素太多 #include<bits/stdc++.h> #define ll long long ...
- 棋盘DP三连——洛谷 P1004 方格取数 &&洛谷 P1006 传纸条 &&Codevs 2853 方格游戏
P1004 方格取数 题目描述 设有N $\times N$N×N的方格图(N $\le 9$)(N≤9),我们将其中的某些方格中填入正整数,而其他的方格中则放入数字00.如下图所示(见样例): A ...
- floyd的魔改应用——洛谷P2419 [USACO08JAN]牛大赛Cow Contest 题解
想找原题请点击这里:传送门 原题: 题目背景 [Usaco2008 Jan] 题目描述 N ( ≤ N ≤ ) cows, conveniently numbered ..N, are partici ...
- 洛谷 P1392 取数
题面 在做这道题前,先要会他的弱化版(实际一模一样,只是愚蠢的洛谷评测级别差了一档(睿智如姬无夜)) ----------------------------------弱化版------------ ...
- 洛谷试炼场-简单数学问题-P1045 麦森数-高精度快速幂
洛谷试炼场-简单数学问题 B--P1045 麦森数 Description 形如2^P−1的素数称为麦森数,这时P一定也是个素数.但反过来不一定,即如果PP是个素数,2^P-1 不一定也是素数.到19 ...
随机推荐
- 安装python爬虫scrapy踩过的那些坑和编程外的思考
这些天应朋友的要求抓取某个论坛帖子的信息,网上搜索了一下开源的爬虫资料,看了许多对于开源爬虫的比较发现开源爬虫scrapy比较好用.但是以前一直用的java和php,对python不熟悉,于是花一天时 ...
- 可以开心的用Markdown了
1 计划 月计划 周计划 日计划 2 实现
- hdu 2045 不容易系列之(3)—— LELE的RPG难题
解题思路: f(n)=1,2,.....n-2,n-1,n 前n-2个已经涂好,那么n-1有两种可能 1.n-1与n-2和1 的颜色都不同 1 粉, n-2 红, n-1 绿. 那么n的颜色 ...
- 菲涅尔反射(Fresnel Reflection)
离线渲染中,通常可以用kd,ks,kt(分别代表物体的漫反射系数,镜面反射系数,透射系数)来简单地描述一个物体的基本材质,例如,我们将一个物体设置为:kd=0,ks=0.1,kt=0.9,即代表一束光 ...
- Database Password Hashes
SQL Server 2000:- SELECT password from master.dbo.sysxlogins where name=’sa’ 0×010034767D5C0CFA5FDCA ...
- Xcode6中添加pch全局引用文件
前沿:xcode6中去掉了pch,为了一些琐碎的头文件引用,加快了 编译速度! xcode6添加pch文件方法 1. 右键Supporting File,选择“New File” 2. 选择Other ...
- cad2013
## ribbon界面? ribbon界面是一种设计ui, 可以认为是传统的 菜单和工具栏 组合. 是 用于 实时显示 + 面向结果的 设计ui 但并不是所有的程序都适合. ribbon 并不是 ...
- Lamp学习笔记
1,php.ini 文件在哪里 /opt/app/php-5.3/etc/php.ini -------------------------------------------- 2014-0 ...
- tomcat服务器配置及使用
序:tomcat作为免费开源的web服务器,广受大家喜欢,但是该如何使用此服务器呢?下面就一步一步教大家操作tomcat服务器 一.权限配置 编辑tomcat-users.xml文件配置tomcat服 ...
- jsp 变量和方法的声明 Java程序片 HTML注释 JSP注释
<%!...%> 声明变量和方法 <%!...%>之中的变量为JSP页面的成员变量,当多个线程访问本页面时,多个线程共享此变量. <%@ page contentType ...