problemscpp
A collection of my answers to algorithm problems in c++.
静态 Public 成员函数 | 所有成员列表
acwing::acwing4214类 参考

AcWing 4214. 三元组 更多...

#include <acwing.h>

静态 Public 成员函数

static int main (istream &cin, ostream &cout)
 

详细描述

AcWing 4214. 三元组

在文件 acwing.h730 行定义.

成员函数说明

◆ main()

int acwing::acwing4214::main ( istream &  cin,
ostream &  cout 
)
static

在文件 acwing.cpp2088 行定义.

2088 {
2089 unsigned short n;
2090 cin >> n;
2091 auto *s = new unsigned int[n];
2092 auto *c = new unsigned int[n];
2093 for(unsigned short i = 0; i < n; i++) {
2094 cin >> s[i];
2095 }
2096 for(unsigned short i = 0; i < n; i++) {
2097 cin >> c[i];
2098 }
2099 unsigned int minimum = 300000001;
2100 for(int j = 1; j < n - 1; j++) {
2101 unsigned int min_left = 100000001;
2102 unsigned int min_right = 100000001;
2103 for(int i = 0; i < j; i++) {
2104 if(s[i] < s[j]) {
2105 if(c[i] < min_left) {
2106 min_left = c[i];
2107 }
2108 }
2109 }
2110 for(int k = j + 1; k < n; k++) {
2111 if(s[j] < s[k]) {
2112 if(c[k] < min_right) {
2113 min_right = c[k];
2114 }
2115 }
2116 }
2117 if(min_left != 100000001 && min_right != 100000001 && minimum > min_left + c[j] + min_right) {
2118 minimum = min_left + c[j] + min_right;
2119 }
2120 }
2121 if(minimum != 300000001) {
2122 cout << minimum;
2123 } else {
2124 cout << -1;
2125 }
2126 return 0;
2127 }

被这些函数引用 acwing::TEST().


该类的文档由以下文件生成: