【2003、2004 NOIp 入门组错题报告】
2003:
T4:
题目大意:
讲这么多话,其实就是求比当前序列大的序列中第m小的一个。可以每次找出比当前序列大的最小的一个序列。我们可以从后往前扫描,当当前这个数比后一个数小时,我们把它与它后面的数中比它大的最小的一个交换,再将它之后的数从小到大排序,
就得到比当前序列大的最小的一个序列了
列: 1 2 3 6 8 7 5 4这个序列,找比它大的最小的序列,我们从后往前扫描,扫到6时发它比它后面一个数8小,我们就将它与它后面比它大的最小的一个数交换,为7,交换后序列为1 2 3 7 8 6 5 4,再将7后的数从小到大排序,变成1 2 3 7 4 5 6 8.
这就是比1 2 3 6 8 7 5 4大的最小的一个序列了。
错题原因:
就拿1 2 3 6 8 7 5 4来说,我只把6加了1,再把它后面最小的数减了1,没考虑后面最小的数可能有比它大2或更多的数;
AC代码:
#include<cstdio>
#include<algorithm>
#include<iostream>
using namespace std; const int N=; int n,m;
int a[N]; int main()
{
scanf("%d%d",&n,&m); for(int i=;i<=n;i++) scanf("%d",&a[i]); while(m--)
{
int i=n;
while(a[i-]>a[i]) i--;
i--; int j=i;
while(j+<=n&&a[j+]>a[i]) j++;
swap(a[i],a[j]); reverse(a+i+,a++n);
} for(int i=;i<=n;i++)
{
printf("%d ",a[i]);
}
}
2004:
T1:
题目大意:
根据输入计分。
错题原因:
它要按照标准比赛要求,必须一方分数大于指定分数,两人的分差还得≥2 。你题目又不说,害我只得五十分(╬ ̄皿 ̄) 。
T4:
题目大意:
求 2^p-1 的后500位和它的位数。
错题原因:
位数可以直接用 p㏒102 下取整 +1 求,然而我直接数,超时了。(什么log玄学,不知道!)
AC代码:
#include<cstdio>
#include<cstring>
#include<cmath>
#include<iostream>
using namespace std; const int N=; int len_a;
int res[N],a[N];
int c[N]; void mul(int a[],int b[])
{
memset(c,,sizeof(c));
for(int i=;i<=;i++)
{
int t=;
for(int j=;j<=;j++)
{ int k=i+j-;
c[k]+=a[i]*b[j]+t;
t=c[k]/;
c[k]%=; } } for(int i=;i<=;i++) a[i]=c[i]; } void qmi(int k)
{
res[]=;
a[]=; while(k)
{ if(k&) mul(res,a);
mul(a,a);
k>>=;
} res[]--;
printf("%d\n",len_a);
for(int i=,j=;i;i--,j++)
{
if(len_a<i) printf("");
else printf("%d",res[i]);
if(j==) puts(""),j=;
}
} int main()
{
int n;
scanf("%d",&n);
len_a=(int)(n*log10())+;
qmi(n); }
【2003、2004 NOIp 入门组错题报告】的更多相关文章
- 纪中10日T1 2300. 【noip普及组第一题】模板题
2300. [noip普及组第一题]模板题 (File IO): input:template.in output:template.out 时间限制: 1000 ms 空间限制: 262144 K ...
- $NOIp$普及组做题记录
\([NOIp2014]\) 螺旋矩阵 \(Sol\) 直接模拟,一次走一整行或者一整列.复杂度\(O(n)\). \(Code\) #include<bits/stdc++.h> #de ...
- $NOIp$提高组做题记录
对了我在这里必须讲一个非常重要的事情,就是前天也就是$2019.8.21$的傍晚,我决定重新做人了$!!$ 其实之前没怎么做$Noip$题,那就从现在开始叭
- 排座椅 2008 NOIP 普及组 第二题
题目描述 上课的时候总会有一些同学和前后左右的人交头接耳,这是令小学班主任十分头疼的一件事情.不过,班主任小雪发现了一些有趣的现象,当同学们的座次确定下来之后,只有有限的D对同学上课时会交头接耳.同学 ...
- 2003年NOIP普及组复赛题解
题目涉及算法: 乒乓球:简单字符串模拟: 数字游戏:区间DP: 栈:卡特兰数 麦森数:高精度.快速幂.数学. 乒乓球 题目链接:https://www.luogu.org/problem/P1042 ...
- 0025:2011年NOIp普及组真题——瑞士轮题解
题目链接:https://www.luogu.com.cn/problem/P1309 如果是新手可能马上会想到sort排序,每比一次就排一次,但是这样的时间复杂度有点高,只有60分: 这是因为每次比 ...
- NOIP提高组2004 合并果子题解
NOIP提高组2004 合并果子题解 描述:在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆.多多决定把所有的果子合成一堆. 每一次合并,多多可以把两堆果子合并到一起,消 ...
- 津津的储蓄计划 NOIp提高组2004
这个题目当年困扰了我许久,现在来反思一下 本文为博客园ShyButHandsome的原创作品,转载请注明出处 右边有目录,方便快速浏览 题目描述 津津的零花钱一直都是自己管理.每个月的月初妈妈给津津\ ...
- NOIp2014提高组初赛错题简析
总体分析 \(89pts\),粗略来看选择题错的比较多,\(-6pts\).同时又是尿性的填空杀扣了\(5pts\). 不过后面的两大题全对了还是可喜可贺 错题精析 单项选择T8 编译器的主要功能是( ...
随机推荐
- Java中Collections类详细用法
1.sort(Collection)方法的使用(含义:对集合进行排序). 例:对已知集合c进行排序? public class Practice { public static void main(S ...
- java实现和为定值的两个数
1 问题描述 输入一个整数数组和一个整数,在数组中查找两个数,满足他们的和正好是输入的那个整数.如果有多对数的和等于输入的整数,输出任意一对即可.例如,如果输入数组[1,2,4,5,7,11,15]和 ...
- Java实现考察团组成
考察团组成 某饭店招待国外考察团.按照标准,对领导是400元/人,随团职员200元/人,对司机50元/人. 考察团共36人,招待费结算为3600元,请问领导.职员.司机各几人. 答案是三个整数,用逗号 ...
- java实现第三届蓝桥杯提取子串
提取子串 [代码填空](满分16分) 串"abcba"以字母"c"为中心左右对称:串"abba" 是另一种模式的左右对称.这两种情况我们都称 ...
- java实现第四届蓝桥杯振兴中华
振兴中华 题目描述 小明参加了学校的趣味运动会,其中的一个项目是:跳格子. 地上画着一些格子,每个格子里写一个字,如下所示:(也可参见p1.jpg) 从我做起振 我做起振兴 做起振兴中 起振兴中华 比 ...
- Alink漫谈(六) : TF-IDF算法的实现
Alink漫谈(六) : TF-IDF算法的实现 目录 Alink漫谈(六) : TF-IDF算法的实现 0x00 摘要 0x01 TF-IDF 1.1 原理 1.2 计算方法 0x02 Alink示 ...
- effictive c++
c++条款 num 1:尽量以const enum inline替换#define 1)对于单纯常量,最好以const对象或enums替换#defines 2)对于形似函数的宏,最好改用inline函 ...
- 不可不知的JSON处理库(cJSON)
ANSI C中的超轻量级JSON解析器 JSON(JavaScript对象表示法)是一种轻量级的数据交换格式.人类易于阅读和书写.机器很容易解析和生成.它基于JavaScript编程语言标准ECMA- ...
- 利用struts2进行单个文件,批量文件上传,ajax异步上传以及下载
利用struts2进行单个文件,批量文件上传,ajax异步上传以及下载 1.页面显示代码 <%@ page language="java" import="java ...
- ibatis BindingException Parameter 'status' not found. Available parameters are [arg1, arg0, param1, param2] 解决方法
最近做项目测试mapper接口时出现了下面这个异常,接口的函数参数找不到,网上搜索发现可能是@Param注解问题. 查阅Mybatis官方文档对@Param的解释如下: 在代码中加入, 异常消失 测试 ...