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) ...
随机推荐
- SQLServer Ansi_Padding的用法
关于Ansi_Padding的用法 1.当设置为ON时,不剪裁字符值中插入到varchar列的尾随空格和二进制值中插入到varbinary列的尾随零.不将值按列的长度进行填充. 2.当设置为OFF时, ...
- js 获取url 参数
$(function () { var WeixinCode = GetQueryString("WeixinCode"); $("#ProXQ").attr( ...
- 在iOS中,实现点击搜索结果隐藏搜索结果的方法。
不知道有没有别的什么的好的方法,最近在实现一个需求(点击搜索,然后输入搜索内容,显示搜索出来的结果,然后点击搜索结果,在当前页面显示所点击的结果的详细的信息).遇到的问题是,点击搜索结果的时候,搜索的 ...
- Ajax的ActionLink方法(适用于异步加载)
8.2.1 AJAX的ActionLink方法 在Razor视图中,AJAX辅助方法可以通过Ajax属性访问.和HTML辅助方法类似,Ajax属性上的大部分AJAX辅助方法都是扩展方法(除了Ajax ...
- 20140912-.NET平台技术思维导图
前段时间在网上看到的一张图,忘记出处了.
- JAVA:数组,排序,查找<4>
一.数组 1.一维数组 (1).数组的定义 数据类型 数组名[]=new 数据类型[大小] public class Demo1 { public static void main(String[] ...
- 几道hihocoder不会做的题
1.https://hihocoder.com/problemset/problem/1433?sid=970287 boarding passes,不会做,看的别人的代码,现在还不是很理解. 2. ...
- C++虐恋:MBCS安装失败导致的四天误工
情况描述:接收远程队友的C++代码,基于vc120工具集(VS2013),而我的机器上是VS2015,需要安装VS2013(只选MFC,除主程序与MFC外其余的组件全部卸掉).然后开始编译,提示 MS ...
- 【Qt】QSettings介绍【转】
简介 QSettings类提供了持久的跨平台应用程序设置. 用户通常期望应用程序记住它的设置(窗口大小.位置等)所有会话.这些信息通常存储在Windows系统注册表,OS X和iOS的属性列表文件中. ...
- c#获取今天星期几
System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.GetDayName(DateTime.Now.DayOfWeek)