Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
140933 | 梁乃元 | 金矿 | C++ | 运行超时 | 0 | 1000 MS | 260 KB | 739 | 2024-04-01 13:52:49 |
# include <bits/stdc++.h> using namespace std ; int a [1005] , g [1005] [1005] ; int main ( ) { int n , x , maxn = 0 , ans = 0 ; cin >> n ; for ( int i = 1 ; i <= n ; i ++ ) { cin >> a [i] ; } char c; for ( int i = 1 ; i <= n ; i ++ ) { int x ; cin >> x ; do { int num = 0 ; while ( c = getchar ( ) && ( '0' <= c && c <= '9' ) ) { num = num * 10 + c - '0' ; } g [x] [num] = 1 ; } while ( c != '\n' ) ; } for ( int i = n ; i >= 1 ; i -- ) { maxn = 0 ; for ( int j = i + 1 ; j <= n ; j ++ ) { if ( g [i] [j] ) { maxn = max ( maxn , a [j] ) ; } } a [i] += maxn ; ans = max ( ans , a [i] ) ; } cout << ans << endl ; return 0 ; }