GKH result insist

1.H-index

a researcher

at least

h paper h score

input:

T test case

N

Ai

output:

thought:

好用的模板:

Answer:

#include <iostream>
#include <algorithm>
#include <fstream>
#include <vector>
#include <deque>
#include <assert.h>
#include <queue>
#include <stack>
#include <set>
#include <map>
#include <stdio.h>
#include <string.h>
#include <utility>
#include <math.h>
#include <bitset>
#include <iomanip>
#include <complex>

using namespace std;

#define rep(i, a, b) for (int i = (a), i##_end_ = (b); i < i##_end_; ++i)
#define debug(...) fprintf(stderr, __VA_ARGS__)
#define mp make_pair
#define x first
#define y second
#define pb push_back
#define SZ(x) (int((x).size()))
#define ALL(x) (x).begin(), (x).end()

template<typename T> inline bool chkmin(T &a, const T &b) { return a > b ? a = b, 1 : 0; }
template<typename T> inline bool chkmax(T &a, const T &b) { return a < b ? a = b, 1 : 0; }
template<typename T> inline bool smin(T &a, const T &b)   { return a > b ? a = b : a;    }
template<typename T> inline bool smax(T &a, const T &b)   { return a < b ? a = b : a;    }

typedef long long LL;

const int N = (int) 1e6 + 6, mod = (int) 0;
int f[N];

void update(int m, int x) { ++m;
    while (m < N) {
        f[m] += x;
        m += m & -m;
    }
}
int query(int m) { ++m;
    int res = 0;
    while (m > 0) {
        res += f[m];
        m -= m & -m;
    }
    return res;
}
int main() {
    int tc;
    cin >> tc;
    for (int tt = 1; tt <= tc; ++tt) {
        cout << "Case #" << tt << ": ";
        int n;
        cin >> n;
        memset(f, 0, sizeof f);
        for (int j = 0; j < n; ++j) {
            int x;
            cin >> x;
            update(x, 1);
            int bl = 0, br = n + 1;
            while (bl < br - 1) {
                int bm = bl + br >> 1;
                int see = j + 1 - query(bm - 1);
                if (see >= bm) {
                    bl = bm;
                } else {
                    br = bm;
                }
            }
            cout << bl << ‘ ‘;
        }
        cout << ‘\n‘;
    }
}

原文地址:https://www.cnblogs.com/Marigolci/p/12329407.html

时间: 2024-10-18 16:45:41

GKH result insist的相关文章

错误处理(Operation Result)方法

问题 现在有一个FileStorageService类,继承自IStorageService,具体实现如下 public interface IStorageService { void WriteAllBytes(string path, byte[] buffer); byte[] ReadAllBytes(string path); } public class FileStorageService : IStorageService { public void WriteAllBytes

Output result string after numbers addition and subtraction

题目描述:  通过键盘输入100以内正整数的加.减运算式,请编写一个程序输出运算结果字符串. 输入字符串的格式为:"操作数1 运算符 操作数2","操作数"与"运算符"之间以一个空格隔开. 补充说明: 1. 操作数为正整数,不需要考虑计算结果溢出的情况. 2. 若输入算式格式错误,输出结果为"0". 要求实现函数:  void arithmetic(const char *pInputStr, long lInputLen,

Struts2:Result结果类型

常用的结果类型 Struts中自带了一些结果类型.dispatcher表示将结果转交给JSP或者Servlet,redirect表示重定向到另外一个URL,redirectAction表示重定向到另外一个Struts动作.默认的都是dispatcher类型.dispatcher类型的返回结果中可以使用OGNL表达式,主要是为了便于实现显示动态的页面.redirect结果类型中也可以使用OGNL表达式.下面是定义dispatcher结果的一个例子: <action name="Test&qu

mybatis异常:Could not find result map java.util.Map 问题分析及解决

错误写法 <select id="queryXXXCount" resultMap="java.util.Map" > mybatis报出的异常日志: org.apache.ibatis.builder.IncompleteElementException: Could not find result map java.util.Map at org.apache.ibatis.builder.MapperBuilderAssistant.setStat

笔记:MyBatis Mapper XML文件详解 - Result Maps

Result Maps(结果集) resultMap 元素是 MyBatis 中最重要最强大的元素.它就是让你远离 90%的需要从结果 集中取出数据的 JDBC 代码的那个东西, 而且在一些情形下允许你做一些 JDBC 不支持的事 情. 事实上, 编写相似于对复杂语句联合映射这些等同的代码, 也许可以跨过上千行的代码. ResultMap 的设计就是简单语句不需要明确的结果映射,而很多复杂语句确实需要描述它们 的关系,你已经看到简单映射语句的示例了,但没有明确的 resultMap.比如: <s

java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result异常的解决方法

今天在写一个JAVA程序的时候出现了异常:java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.发现报错的语句是: 1 foo.divide(bar)); 原来JAVA中如果用BigDecimal做除法的时候一定要在divide方法中传递第二个参数,定义精确到小数点后几位,否则在不整除的情况下,结果是无限循环小数时,就会抛出以上异常.解决方法:

8.4Solr API使用(Result Grouping分组查询)

转载请出自出处:http://eksliang.iteye.com/blog/2169458 一.概述 分组统计查询不同于分组统计(Facet),facet只是简单统计记录数,并不能为每组数据返回实际的数据回来,solr提供的grouping查询能够解决这一问题,也就是说,他除了能分组外,还能把每组数据返回来. 二.语法简介 参考实例一 查询参数如下: q=*:* &group=true &group.field=price 返回结果如下: Solr Grouping参数列表 参数 参数含

mybatis强化(二)Parameters和Result

本文通过一个简单例子简单记录下参数的映射.转载注明出处:http://www.cnblogs.com/wdfwolf3/p/6804243.html,谢谢.文件目录如下, 1.配置文件mybatisconfig.xml如下,这里简要说明一下environments.MyBatis 可以配置成适应多种环境,这种机制有助于将 SQL 映射应用于多种数据库之中,尽管可以配置多个环境,每个 SqlSessionFactory 实例只能选择其一.所以,如果你想连接两个数据库,就需要创建两个 SqlSess

Struts2中 Result类型配置详解(转)

一个result代表了一个可能的输出.当Action类的方法执行完成时,它返回一个字符串类型的结果码,框架根据这个结果码选择对应的result,向用户输出.在com.opensymphony.xwork2.Action接口中定义了一组标准的结果代码,可供开发人员使用,当然了只有我们的action继承ActionSupport 这个类才可以使用下面的结果代码,如下所示:public interface Action{    public static final String SUCCESS =