先送上一篇题解(虽然全英文的):http://codeforces.com/blog/entry/18034

A题:http://codeforces.com/problemset/problem/546/A

没什么好说的,SB题

 #include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<cmath>
#include<algorithm>
#include<cctype>
#include<vector>
#include<stack>
#include<map>
using namespace std;
int n,k,w;
int main()
{
while(cin>>k>>n>>w)
{
int sum;
sum=(+w)*w*k/;
int num;
num=sum-n;
if(num<=)
cout<<""<<endl;
else
cout<<num<<endl;
}
return ;
}

B题:http://codeforces.com/problemset/problem/546/B

这题也没啥好说的,赛场上完全应该搞出来的,但是自己作死,不看后来官方给的题目修改的提示,然后一直WA在第六组,后来改了以后又是因为细节问题,一直WA在第21组,经最终修改,终于A了。就是将其排序一下,然后记录每个数最少加多少,才能让数列里面的数各不相同,暴力即可,不过注意的就是记录数组的范围应该是6000,因为后来题目改了,a[i]可以大于n,所以最大就是3000+3000=6000

 #include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<cmath>
#include<vector>
#include<algorithm>
#include<map>
#include<stack>
using namespace std;
const int maxn=+;
int a[maxn],n;
int vis[maxn];
int main()
{
while(cin>>n)
{
memset(vis,,sizeof(vis));
for(int i=;i<n;i++)
{
scanf("%d",&a[i]);
vis[a[i]]++;
}
sort(a,a+n);
long long sum=;
for(int i=;i<n;i++)
if(a[i]==a[i+])
{
int j;
for(j=;;j++)
{
if(vis[a[i]+j]==)
{
a[i]=a[i]+j;
++vis[a[i]];
break;
}
}
sum+=j;
}
cout<<sum<<endl;
}
return ;
}

C题:http://codeforces.com/problemset/problem/546/C

其实是个水题,赛场上完全可以搞出来的,但是我也不知道为什么用栈模拟不行,后来改用了vector就可以了,纯粹的模拟题,很水,最后结束那个地方处理一下就行

附上一篇vector的用法介绍:http://codeforces.com/problemset/problem/546/C

 #include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<string>
#include<cmath>
#include<cctype>
#include<vector>
#include<stack>
#include<map>
using namespace std;
vector <long long> s1,s2;
int main()
{
long long n,k1,k2;
cin>>n;
cin>>k1;
vector <long long> s1(k1),s2(n-k1);
for(long long i=;i<s1.size();i++)
cin>>s1[i];
vector<long long> temps1=s1;
cin>>k2;
for(long long i=;i<s2.size();i++)
cin>>s2[i];
vector<long long> temps2=s2;
long long cnt=;
for(int i=;i<;i++)
{
cnt++;
if(s1.front()>s2.front())
{
long long temp1,temp2;
temp1=s1.front(); temp2=s2.front();
s1.erase(s1.begin()); s2.erase(s2.begin());
s1.push_back(temp2); s1.push_back(temp1);
}
else
{
long long temp1,temp2;
temp1=s1.front(); temp2=s2.front();
s1.erase(s1.begin()); s2.erase(s2.begin());
s2.push_back(temp1); s2.push_back(temp2);
}
if(s1.size()==)
{
cout<<cnt<<""<<endl;;
return ;
}
else if(s2.size()==)
{
cout<<cnt<<""<<endl;
return ;
}
}
cout<<"-1"<<endl;;
return ;
}

codeforces #304 DIV2的更多相关文章

  1. Codeforces #180 div2 C Parity Game

    // Codeforces #180 div2 C Parity Game // // 这个问题的意思被摄物体没有解释 // // 这个主题是如此的狠一点(对我来说,),不多说了这 // // 解决问 ...

  2. Codeforces #541 (Div2) - E. String Multiplication(动态规划)

    Problem   Codeforces #541 (Div2) - E. String Multiplication Time Limit: 2000 mSec Problem Descriptio ...

  3. Codeforces #541 (Div2) - F. Asya And Kittens(并查集+链表)

    Problem   Codeforces #541 (Div2) - F. Asya And Kittens Time Limit: 2000 mSec Problem Description Inp ...

  4. Codeforces #541 (Div2) - D. Gourmet choice(拓扑排序+并查集)

    Problem   Codeforces #541 (Div2) - D. Gourmet choice Time Limit: 2000 mSec Problem Description Input ...

  5. Codeforces #548 (Div2) - D.Steps to One(概率dp+数论)

    Problem   Codeforces #548 (Div2) - D.Steps to One Time Limit: 2000 mSec Problem Description Input Th ...

  6. 【Codeforces #312 div2 A】Lala Land and Apple Trees

    # [Codeforces #312 div2 A]Lala Land and Apple Trees 首先,此题的大意是在一条坐标轴上,有\(n\)个点,每个点的权值为\(a_{i}\),第一次从原 ...

  7. Codeforces #263 div2 解题报告

    比赛链接:http://codeforces.com/contest/462 这次比赛的时候,刚刚注冊的时候非常想好好的做一下,可是网上喝了个小酒之后.也就迷迷糊糊地看了题目,做了几题.一觉醒来发现r ...

  8. codeforces #round363 div2.C-Vacations (DP)

    题目链接:http://codeforces.com/contest/699/problem/C dp[i][j]表示第i天做事情j所得到最小的假期,j=0,1,2. #include<bits ...

  9. codeforces round367 div2.C (DP)

    题目链接:http://codeforces.com/contest/706/problem/C #include<bits/stdc++.h> using namespace std; ...

随机推荐

  1. Echarts自适应浏览器大小

    var myChart = echarts.init(document.getElementById('sitesChar')); var option = { title : { text: 'No ...

  2. CodeForces 567B Berland National Library hdu-5477 A Sweet Journey

    这类题一个操作增加多少,一个操作减少多少,求最少刚开始为多少,在中途不会出现负值,模拟一遍,用一个数记下最大的即可 #include<cstdio> #include<cstring ...

  3. sql trim()函数去掉两头空格

    1.sql trim()函数去掉两头空格 sql语法中没有直接去除两头空格的函数,但有ltrim()去除左空格rtrim()去除右空格. 合起来用就是sql的trim()函数,即select ltri ...

  4. linux下环境变量PS1设置

    PS1变量中提示符各项含义:   \d :代表日期,格式为weekday month date,例如:Wed Dec 12 \H :完整的主机名称.例如:hostname是debian.linux \ ...

  5. linux进程、管道和重定向

    1.shell先后使用fork和exec系统调用来执行一个外部命令. 2.在linux系统中,有三个文件会被内核自动打开,分别是stdin.stdout.stderr. 3.进程的属性相关命令: 查看 ...

  6. Linux关闭防火墙,关闭Selinux

    查看防火墙状态 iptables -L or service iptables status 临时性关闭防火墙 iptables -F or service iptables stop 永久性关闭防火 ...

  7. Java8学习笔记----Lambda表达式 (转)

    Java8学习笔记----Lambda表达式 天锦 2014-03-24 16:43:30 发表于:ATA之家       本文主要记录自己学习Java8的历程,方便大家一起探讨和自己的备忘.因为本人 ...

  8. HDU 5739 Fantasia

    可以将这个图转换成森林来进行树形dp求解.看了这篇具体教学才会的:http://www.cnblogs.com/WABoss/p/5696926.html 大致思路:求解一下点双连通分量(Tarjan ...

  9. 第13章 Swing程序组件----常用布局管理器

    在Swing中,每个组件在容器中都有一个具体的位置和大小,而在容器中摆放各种组件时很难判断其具体位置和大小.布局管理器提供了Swing组件安排.展示在容器中的方法及基本的布局功能. Swing提供的常 ...

  10. 关于Context []startup failed due to previous errors有效解决方式

    http://blog.csdn.net/mcpang/article/details/5468386