冷傲小猫咪

文章
5
资源
0
加入时间
3年0月21天

2016 大连网络赛 hdu 5869 Different GCD Subarray Query(gcd+树状数组)★ ★

题意:长度n的序列, m个询问区间[L, R], 问区间内的所有子段的不同GCD值有多少种.题解:考虑固定左端点的不同GCD值,只有不超过logA种, 所以事件点只有nlogA个. 那么离线处理, 按照区间右端点排序从小到大处理询问,用一个树状数组维护每个GCD值的最大左端点位置即可. 复杂度是O(nlogAlogn).这份题解里有两个难点:1、如何快速的离线化处理出固定的

jpa实现update操作 字段有值就更新,没值就用原来的

/***复杂JPA操作 使用@Query()自定义sql语句 根据业务id UId去更新整个实体* 删除和更新操作,需要@Modifying和@Transactional注解的支持** 更新操作中 如果某个字段为null则不更新,否则更新【注意符号和空格位置】** @param huaYangArea 传入实体,分别取实体字段进行set* @return 更新操作返回sql作用条数*/@Modifying @Transactional @Query(value =