nenu contest
http://vjudge.net/vjudge/contest/view.action?cid=54393#overview
A n^2能过 对第二个n我二分了一下,快了一点点,nlogn
#include<cstdio>
#include<algorithm>
using namespace std;
double judge[];
int main(){
for(int i=;i<;i++){
judge[i]=i*;
}
double now;
int n,s;
while(~scanf("%d%d",&n,&s)){
int sum=;
for(int i=;i<n;i++){
scanf("%lf",&now);
int L=lower_bound(judge,judge+,now)-judge;
if(judge[L]>now) L--;
if(judge[L]<=now&&now<=judge[L]+) sum++;
}
printf("%.1f\n",sum*(+0.2*s));
}
return ;
}
A LEE的on的方法也很值得借鉴,竟然比我二分的慢,不知为何,数据小吧
#include<cstdio>
const double eps = 1e-;
int main() {
int n, s, cnt;
double t;
while (~scanf("%d%d", &n, &s)) {
cnt = ;
while (n--) {
scanf("%lf", &t);
int T = int(t);
if (T % < || (T % == && (t-T) < eps)) {
cnt++;
}
}
printf("%.1f\n", cnt*( + 0.2*s));
}
return ;
}
B %X scanf printf 16进制输入输出
#include<cstdio>
#include<cstring>
const int M=;
char op[M];
int main(){
int t,sa,sb;
while(~scanf("%d",&t)){
while(t--){
scanf("%X%X",&sa,&sb);
getchar();
gets(op);
int lp=strlen(op);
for(int i=;i<lp;i++){
if(op[i]==''){
if(op[i+]=='A'){
sa+=sb;
}
else{
sb+=sa;
}
i+=;
}
else if(op[i]=='F'){
if(op[i+]=='A'){
sa+=sa;
}
else{
sb+=sb;
}
i+=;
}
}
printf("%X %X\n",sa,sb);
}
}
return ;
}
C 比赛时n^2logn 900ms压线过,事实上nlogn就行了
#include<cstdio>
#include<cstring>
#include<iostream>
#include<map>
#define mt(a,b) memset(a,b,sizeof(a))
using namespace std;
const int M=;
class UnionFindSet { //并查集
int par[M];
public:
void init() {
mt(par,-);
}
int getroot(int x) {
int i=x,j=x,temp;
while(par[i]>=) i=par[i];
while(j!=i) {
temp=par[j];
par[j]=i;
j=temp;
}
return i;
}
bool unite(int x,int y) {
int p=getroot(x);
int q=getroot(y);
if(p==q)return false;
if(par[p]>par[q]) {
par[q]+=par[p];
par[p]=q;
} else {
par[p]+=par[q];
par[q]=p;
}
return true;
}
}gx;
map<string,int> mp;
string str;
int main(){
int n,m;
char op[];
while(~scanf("%d",&n)){
bool flag=false;
gx.init();
mp.clear();
for(int i=;i<=n;i++){
scanf("%d",&m);
while(m--){
flag=true;
scanf("%s",op);
str=(string)op;
if(!mp[str]){
mp[str]=i;
}
else{
gx.unite(mp[str],i);
}
}
}
if(!flag){
printf("%d\n",n);
continue;
}
int ans=;
for(int i=;i<=n;i++){
if(i==gx.getroot(i)) ans++;
}
printf("%d\n",ans-);
}
return ;
}
I n^2能过400ms on单调队列62ms
#include<cstdio>
#include<cstdlib>
#include<algorithm>
using namespace std;
const int M=;
int a[M],b[M];
int main(){
int n,m;
while(~scanf("%d%d",&n,&m)){
for(int i=;i<n;i++){
scanf("%d",&a[i]);
}
for(int i=;i<m;i++){
scanf("%d",&b[i]);
}
int la=,lb=,ans=1e9;
while(la!=n&&lb!=m){
ans=min(ans,abs(a[la]-b[lb]));
if(a[la]>b[lb]) lb++;
else la++;
}
printf("%d\n",ans);
}
return ;
}
J on 水题
#include<cstdio>
typedef __int64 LL;
const int M=;
char a[M][];
int main(){
int n;
while(~scanf("%d",&n)){
for(int i=;i<n;i++){
scanf("%s",a[i]);
}
LL ans=;
LL sum=;
for(int i=n-;i>=;i--){
if(a[i][]=='W') ans+=sum;
else sum++;
}
printf("%I64d\n",ans);
}
return ;
}
nenu contest的更多相关文章
- nenu contest3 The 5th Zhejiang Provincial Collegiate Programming Contest
ZOJ Problem Set - 2965 Accurately Say "CocaCola"! http://acm.zju.edu.cn/onlinejudge/showP ...
- Programming Contest Problem Types
Programming Contest Problem Types Hal Burch conducted an analysis over spring break of 1999 and ...
- hdu 4946 2014 Multi-University Training Contest 8
Area of Mushroom Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) ...
- 2016 Multi-University Training Contest 2 D. Differencia
Differencia Time Limit: 10000/10000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Tot ...
- 2016 Multi-University Training Contest 1 G. Rigid Frameworks
Rigid Frameworks Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) ...
- hdu-5988 Coding Contest(费用流)
题目链接: Coding Contest Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Ot ...
- ZOJ 3703 Happy Programming Contest
偏方记录背包里的物品.....每个背包的价值+0.01 Happy Programming Contest Time Limit: 2 Seconds Memory Limit: 65536 ...
- 2012 Multi-University Training Contest 9 / hdu4389
2012 Multi-University Training Contest 9 / hdu4389 打巨表,实为数位dp 还不太懂 先这样放着.. 对于打表,当然我们不能直接打,这里有技巧.我们可以 ...
- 2014 Multi-University Training Contest 9#11
2014 Multi-University Training Contest 9#11 Killing MonstersTime Limit: 2000/1000 MS (Java/Others) ...
随机推荐
- Jmail发送邮件与带附件乱码解决办法
Jamil发送邮件的具体用法: 首先,我们要从网上下载Jamil.dll的组件,这个网上很多,然后添加引用using jmail,然后再本机或者服务器上注册一下 将jmail.dll拷贝到服务器的sy ...
- 【学习笔记】【C语言】第一个C程序
1.新建C语言程序 *打开Xcode *新建文件 *选择C语言程序 *输入程序名称 *选择存放路径 *创建完成后 2.也可以用终端来创建 通过指令来创建.c文件 3.编写代码 4. ...
- UI3_UITableView
// // AppDelegate.m // UI3_UITableView // // Created by zhangxueming on 15/7/13. // Copyright (c) 20 ...
- cocos2d-x 节点操作 -->J2ME
cocos2d-x 的节点操作涉及到以下几点 1. 节点之间的关系 2. 节点的添加操作 3. 节点的删除操作 4. ...
- 字符串反转(StringBuffer)
package com.java1234.chap03.sec08; public class zifufanzhuan { public static void main(String[] args ...
- WP开发笔记——WP7 SDK使用技巧
俗话说的好,工欲善其事,必先利其器. 入门WP开发之前,免不了要先接触开发环境和开发工具.使用WP7 SDK进行开发,我们需要掌握SDK的一些实用技巧,以便我们的开发. 一.开启/关闭电脑键盘输入 W ...
- Java基础(二)
下面来实现一个小程序,要求如下: 从键盘接收一个字符串,程序对其中所有的字符进行排序,例如键盘输入:helloitcast程序打印acehillostt 步骤分析: 1.键盘录入字符串,Scanner ...
- MongoDB的常用命令
[转]http://blog.csdn.net/ithomer/article/details/17111943 mongodb由C++编写,其名字来自humongous这个单词的中间部分,从名字可见 ...
- python之递归
递归的定义:即对自己自身内容的引用. 有用的递归函数应包含以下几步份: 当函数直接返回值时有基本的实例(最小可能性问题): 递归实例,包括一个或者多个问题较小部分的递归调用: 递归的关键就是将问题分解 ...
- HighCharts学习笔记
目录 xAxis自定义时间刻度的显示 xAxis自定义时间刻度 我们先来看下HighCharts图表的xAxis对象有哪些属性(红色标记重要属性): allowDecimals: Booleancat ...