19-10-30-Night-V
看到$\text{V}$就想到了V神。
快快放假....
$\text{Vicetone}$最新单曲$\text{Aftermath}$大家听了嘛……
(真不是学数论之后的意思啊,译为‘后果’,显然是不好的……)
害怕联赛不明不白退役……
不开$\text{C++11}$挂$75$分=。=
所以一定要看编译选项啊……
结果:
我觉得是(OJ上也是):
4
|
Miemeng | 100
03:29:05
|
75
03:29:05
|
30
03:29:05
|
205
03:29:05
|
事实上……
23 | Miemeng | 100 | 0 | 30 | 130 |
好死了……为啥不开$\text{C++11}$
ZJ一下:
题不算难。
T1打表找规律成功!
T2码了一个$30$分暴力,后来为了要$20$分的特殊性质写了一个神奇$\text{C++11}$
然后就0了。
T3暴力还挺稳。
TJ时间:
T1
打表找到规律。
只想说一句话:爆龙龙就去化一波柿子。
化柿子的过程:
给的是这个:
$$\sum \limits_{i=0}^{p} \left \lfloor \frac{iq}{p} \right \rfloor$$
化下:
$$ \Large
\begin{array}{rl}
= & \sum \limits_{i=0}^{p} \frac{iq-iq\%p }{p} \\
= & \sum \limits_{i=0}^{p} iq-\sum \limits_{i=0}^{p} iq\%p \over p \\
= & \frac{pq(p+1)}{2} - \sum \limits_{i=0}^{p} iq\%p \over p
\end{array}
$$
但是有个$\sum$化不掉,此时就需要更加神奇的化柿子方法。
只考虑:
$$ \sum \limits_{i=0}^{p} iq\%p$$
设$r=gcd(p,q)$
于是可打表得:
$$ \Large
\begin{array}{rl}
& \sum \limits_{i=0}^{p} iq\%p\\
= & (p-r)\times(p/r)\times r \over 2\\
= & (p-r) \times p \over 2
\end{array}
$$
最后柿子长这样:
$$ \Large
\begin{array}{rl}
& \frac{pq(p+1)}{2} - \frac{p \times (p-r)}{2} \over p \\
= & \frac{q(p+1)- p+r}{2}
\end{array}
$$
如果不化简会爆龙龙……
#include <iostream>
#include <cstring>
#include <cstdio>
#define LL long long using namespace std; LL gcd(LL a,LL b){
return b==0?a:gcd(b,a%b);
}
int main(){
#ifndef LOCAL
freopen("simplecalc.in" ,"r",stdin);
freopen("simplecalc.out","w",stdout);
#endif
LL T,q,p;
cin>>T;
while(T--){
cin>>p>>q;
LL gcn=gcd(p,q);
cout<<((p+1)*q-(p-gcn))/2<<endl;
}
}
T2
分收益和损失两部分。
收益的我们要尽量花费少,所以按花费排序。
损失的我们可以按照X国的军队做,按损失后剩下的排序。
记住:这两个题的输入不一样!
对于损失部分
$k$指投入,$t$指产出。
X国的军队:输入$k, \Delta$
本题:输入$k,t$
于是有$\Delta=k-t \Rightarrow t=k-\Delta$
所以是一致的,都是按产出从大到小排序从而减少浪费。
而且我们一定要先收益再损失。
写个厉害的比较函数……
#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdio>
#define LL long long
#define N 1111111 using namespace std; int check(LL a,LL b){
if(a*b<=0)return 0;
if(a<0 && b<0)
return 2;
if(a>0 && b>0)
return 1;
}
struct YB{
LL bef,aft;
friend bool operator < (const YB &a,const YB &b){
LL dela=a.aft-a.bef,
delb=b.aft-b.bef,
cek=check(dela,delb);
if(cek==0)
return dela>delb;
else if(cek==1)
return a.bef<b.bef;
else return a.aft>b.aft;
}
}bs[N];
LL bn; int main(){
#ifndef LOCAL
freopen("reformat.in" ,"r",stdin);
freopen("reformat.out","w",stdout);
#endif
cin.sync_with_stdio(false);
cin>>bn;
for(int i=1;i<=bn;i++)
cin>>bs[i].bef>>bs[i].aft;
sort(bs+1,bs+bn+1);
// for(int i=1;i<=bn;i++)cout<<bs[i].bef<<" "<<bs[i].aft<<endl;
LL lft=0,ans=0;
for(int i=1;i<=bn;i++){
if(lft<bs[i].bef){
ans+=bs[i].bef-lft;
lft=bs[i].aft;
}
else{
lft-=bs[i].bef;
lft+=bs[i].aft;
}
}
cout<<ans<<endl;
}
T3
我太弱了。
19-10-30-Night-V的更多相关文章
- 2016.10.30 NOIP模拟赛 day2 PM 整理
满分:300分 直接全部爆零,真的是很坑啊! 10.30的题目+数据:链接:http://pan.baidu.com/s/1jHXLace 密码:i784 T1: 题目中的难点就是每次折叠的点可能应经 ...
- 10.30 正睿停课训练 Day12
目录 2018.10.30 正睿停课训练 Day12 A 强军战歌(DP 树状数组 容斥) B 当那一天来临(思路) C 假如战争今天爆发(贪心) 考试代码 B C 2018.10.30 正睿停课训练 ...
- 第18次Scrum会议(10/30)【欢迎来怼】
一.小组信息 队名:欢迎来怼小组成员队长:田继平成员:李圆圆,葛美义,王伟东,姜珊,邵朔,冉华 小组照片 二.开会信息 时间:2017/10/30 17:19~17:38,总计19min.地点:东北师 ...
- Ubuntu 19.10 发布 | 云原生生态周报 Vol. 24
作者 | 木苏.进超.冬岛.元毅.心水.衷源 业界要闻 1.云原生编程语言 Pulumi 1.0 pulumi ,一款中立的开源云开发平台,Pulumi 支持多语言.混合云环境.完全可扩展.初期支持 ...
- [19/10/13-星期日] Python中的函数
一.函数 # 第五章 函数 ## 函数简介(function) - 函数也是一个对象 - 对象是内存中专门用来存储数据的一块区域 - 函数可以用来保存一些可执行的代码,并且可以在需要时,对这些语句进行 ...
- 程序员的 Ubuntu 19.10 配置与优化指南
原文地址:程序员的 Ubuntu 19.10 配置与优化指南 0x00 环境 CPU: Intel Core i9-9900k GPU: GeForce RTX 2070 SUPER RAM: DDR ...
- gnuWin32-mini-2016.10.30
2016-10-28 04:48 1,017,856 awk.exe ver 4.1.4 2016-10-29 00:26 77,312 bc.exe ver 1.06 2016-10-30 01:4 ...
- 背水一战 Windows 10 (30) - 控件(文本类): AutoSuggestBox
[源码下载] 背水一战 Windows 10 (30) - 控件(文本类): AutoSuggestBox 作者:webabcd 介绍背水一战 Windows 10 之 控件(文本类) AutoSug ...
- ffmpeg -i 10.wmv -c:v libx264 -c:a aac -strict -2 -f hls -hls_list_size 0 -hls_time 5 C:\fm\074\10\10.m3u8
ffmpeg -i 10.wmv -c:v libx264 -c:a aac -strict -2 -f hls -hls_list_size 0 -hls_time 5 C:\fm\074\10\1 ...
- [Linux] 在 Ubuntu 19.10 上开启 SSH 服务并允许远程登录
在 Ubuntu 19.10 上安装 SSH,并开启服务 0.检查并确认系统当前是否已安装SSH: sudo ps -e | grep ssh 如果只有 ssh-agent 说明 ssh-server ...
随机推荐
- 利用IK分词器,自定义分词规则
IK分词源码下载地址:https://code.google.com/p/ik-analyzer/downloads/list lucene源码下载地址:http://www.eu.apache.or ...
- de4Dot用法 解决 .net程序 reflecter反编译 “索引超出了数组界限”问题
de4Dot 反混淆工具.当你反编译 .net写的dll 或exe时出现:索引超出了数组界限 问题时 可以去网上下这个工具,通过cmd命令 打开de4dot的exe 空格 dll的全路径. 这样 :D ...
- 码云的使用以及pycharm
码云的使用 下载Git一路next 在码云上新建仓库 建立码云仓库 右键 git bash hero 依次输入 git config --global user.name "用户名&qu ...
- HTML_表单标签
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- 2019-8-27-静默命令行安装-Visual-C++-发行包
title author date CreateTime categories 静默命令行安装 Visual C++ 发行包 lindexi 2019-8-27 15:39:3 +0800 2019- ...
- python的object(转)
原文章:https://www.cnblogs.com/sesshoumaru/p/6042322.html 1. object类是Python中所有类的基类,如果定义一个类时没有指定继承哪个类,则默 ...
- 在VMware中创建一个新的虚拟机 ,安装Linux4.X系统 ,之后在此基础上安装openfiler(网络存储管理实用程序)
到此为止虚拟机的前期设置准备好了 下面来为此虚拟机添加iso镜像 (这个是在http://www.openfiler.com/community/download openfiler官网上面下载的) ...
- Delphi 窗口置顶的方法
有几种窗口置顶的方法,简单的有: ShowWindow(窗口句柄,sw_ShowNormal); SetWindowPos(窗口句柄,HWND_NOTOPMOST,0,0,0,0,SWP_NOMOV ...
- CentOS 7.2部署NTP服务器实现时间同步
CentOS 7.2部署NTP服务器实现时间同步 [日期:2017-12-18] 来源:Linux社区 作者:梁明远 [字体:大 中 小] 1. 前言 对于容器编排系统,前段时间主要研究kube ...
- 精度试验结果报告Sleep, GetTickCount, timeGetTime, QueryPerformanceCounter
一段简单的代码来实现精度试验 int main() { // 初始化代码 ...... int i = 0; while(i++ < 1000) ...