C. Polycarp Restores Permutation
时间:2019-03-21
本文章向大家介绍C. Polycarp Restores Permutation,主要包括C. Polycarp Restores Permutation使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
链接:https://codeforces.com/contest/1141/problem/C
题意:
给n-1个数,
qi=pi+1−pi
p为1-n的排列序列
q为给的序列。
根据q求出p, 求不出时为-1。
思路:
另p数组首个为0.求出p数组,再得到p数组中最小的值,将p中所有数减掉最小值再加1得到原p。
同时记录原p中每个数出现的次数。超过一次,说明不能还原 。
代码:
#include <bits/stdc++.h> using namespace std; typedef long long LL; const int MAXN = 2e5 + 10; LL a[MAXN]; map<LL, int> b; int main() { int n, v; cin >> n; a[0] = 0; LL sum = 0, mmin = 0; for (int i = 2;i <= n;i++) { cin >> v; a[i] = a[i - 1] + v; sum += a[i]; mmin = min(mmin, a[i]); } for (int i = 1;i <= n;i++) { a[i] = a[i] - mmin + 1; if (b[a[i]] == 1 || a[i] > n) { cout << -1 << endl; return 0; } b[a[i]] = 1; } for (int i = 1;i <= n;i++) cout << a[i] << ' ' ; cout << endl; return 0; }
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- python 自动化测试(5):页面基类封装
- 微信小程序实战开发四:小程序获取用户信息流程及信息存储方式解析
- python 自动化测试(6):jar包调用
- 微信小程序实战开发五:使用自定义组件配置一个通用的图片轮播组件。
- 亿级流量系统如何玩转 JVM
- 微信小程序实战开发六:使用weui-flex创建一个可自由配置的布局组件。
- JDBCJava连接MySql数据库
- Python中的集合
- Centos7下误删python2和yum的解决办法
- Java正则表达式匹配日期及基本使用
- VM虚拟机中linux centOS 联网单网卡配置教程
- Python操作redis数据库
- pytest 测试框架学习(1):初识
- 爬虫工程师也应该会的 NodeJS 知识(三)- 快速抛弃 execjs
- 八皇后问题Python实现