Summer training #4
D:找到两个数 一个是另一个的整数倍(1也算)
因为N是600000 调和级数为ln(n+1) 算一下 可以直接爆
#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define foror(i,a,b) for(i=a;i<b;i++)
#define foror2(i,a,b) for(i=a;i>b;i--)
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define lson o<<1, l, m
#define rson o<<1|1, m+1, r
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que;
typedef long long ll;
bool cmp(int x,int y){return x>y;}
int where[];
int visit[];
int main()
{
//freopen("in.txt", "r", stdin);
//freopen("out.txt", "w", stdout);
int n,k;
cin >> n >> k;
int ans1=,ans2=;
int t;
for(int i=;i<=k;i++)
{
scanf("%d",&t);
if(visit[t]!=) //==1
{
ans1=where[t];
ans2=i;
break;
}
visit[t]++;
where[t]=i;
}
if(ans1!=&&ans2!=)
{
printf("%d %d\n",ans1,ans2);
return ;
}
for(int i=;i<=n;i++)
for(int j=*i;j<=n;j+=i)
{
if(visit[i]!=&&visit[j]!=)
{
ans1=where[i];
ans2=where[j];
break;
}
}
if(ans1!=&&ans2!=)
{
printf("%d %d\n",ans1,ans2);
return ;
}
printf("0 0\n");
return ;
}
E:两个板之间的数之和是K的倍数?? 反正这么做过了
#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define foror(i,a,b) for(i=a;i<b;i++)
#define foror2(i,a,b) for(i=a;i>b;i--)
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define lson o<<1, l, m
#define rson o<<1|1, m+1, r
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que;
typedef long long ll;
bool cmp(int x,int y){return x>y;}
char a[];
//(a1+an)*n/2;
int main()
{
//freopen("in.txt", "r", stdin);
//freopen("out.txt", "w", stdout);
int n,k;
cin >> n;
scanf("%s",a+);
//printf("%s\n",a+1);
int num=;
int len=strlen(a+);
//cout <<len<<endl;
int first=,last=;
int pop=;
for(int i=;i<=len&&pop!=;i++)
{
if(a[i]=='')
{
//TS;
for(int j=i;j<len;j+=n)
{
//cout << j<<endl;
if(a[j+]=='')
{
first=i;
last=j+;
pop=;
break;
}
}
}
}
if(first!=&&last!=)
{
printf("%d %d",first,last);
return ;
}
printf("0 0\n");
return ;
}
G:水
H:2*3的砖铺 N*M的地板 以前CF好像做过 直接判min(n,m)>=2&&max(n,m)>=3 然后n*m%6==0
证明的话 引用别人的:
乘积是6的倍数那就说明有因子2和3:
1)一边是2的倍数恰好另一边是3的倍数,这种情况下显然可行;
2)一边是6的倍数另一边不是2也不是3的倍数,那另一边肯定是奇数,为1的时候不行,设边为N=2a+1=2(a-1)+3,那前面就以2x3的形式放最后一个以3x2的形式放,由于一边为6的倍数那么就是一定可以放得下的
#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define foror(i,a,b) for(i=a;i<b;i++)
#define foror2(i,a,b) for(i=a;i>b;i--)
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define lson o<<1, l, m
#define rson o<<1|1, m+1, r
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que;
typedef long long ll;
int main()
{
//freopen("in.txt", "r", stdin);
//freopen("out.txt", "w", stdout);
int k;
cin >> k;
while(k--)
{
ll n,m;
cin >> n >> m;
ll sum=n*m;
if(min(n,m)<||max(n,m)<)
{
cout<<"No"<<endl;
continue;
}
if(sum%==)
cout <<"Yes"<<endl;
else
cout <<"No"<<endl;
}
return ;
}
I:阅读理解 把最长的R B先连起来
#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define foror(i,a,b) for(i=a;i<b;i++)
#define foror2(i,a,b) for(i=a;i>b;i--)
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define lson o<<1, l, m
#define rson o<<1|1, m+1, r
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que;
typedef long long ll;
int red[],blue[];
bool cmp(int x,int y){return x>y;}
int main()
{
//freopen("in.txt", "r", stdin);
//freopen("out.txt", "w", stdout);
int n;
while(scanf("%d",&n)==)
{
mem(red,);
mem(blue,);
int pop=;
int pop1=;
int number=;
int ans=;
char ch;
int j;
for(int i=;i<=n;i++)
{
cin >> j>>ch;
if(ch=='R')
{
red[++pop]=j;
}
else
{
blue[++pop1]=j;
}
}
sort(red+,red+pop+,cmp);
sort(blue+,blue+pop1+,cmp);
for(int i=;i<=min(pop,pop1);i++)
{
ans+=red[i]+blue[i]-;
}
cout <<ans<<endl;
}
return ;
}
J:按条件读取字符 组成词组 输出
#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define foror(i,a,b) for(i=a;i<b;i++)
#define foror2(i,a,b) for(i=a;i>b;i--)
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define lson o<<1, l, m
#define rson o<<1|1, m+1, r
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que;
typedef long long ll;
//stack<string> a;
int pop=;
map<string,int> mp;
string strans;
int ans=;
char c[];
//(a1+an)*n/2;
void print()
{
for(map<string,int>::iterator it=mp.begin();it!=mp.end();it++)
{
if(it->second>ans)
{
strans=it->first;
ans=it->second;
}
}
cout << strans<<":"<<ans<<endl;
}
int main()
{
//freopen("in.txt", "r", stdin);
//freopen("out.txt", "w", stdout);
while(gets(c))
{
int len=strlen(c);
if(len==&&c[]=='#')
{
print();
mp.clear();
strans="";
ans=;
continue;
}
else
{
for(int i=;i<len;i++)
{
string start="";
if(c[i]>='a'&&c[i]<='z')
{
int cur=i;
while(c[cur]>='a'&&c[cur]<='z')
{
start+=c[cur];
cur++;
}
i=cur;
if(c[cur]==','||c[cur]=='\0')
continue;
start+=' ';
while(c[cur]==' ')
cur++;
while(c[cur]>='a'&&c[cur]<='z')
{
start+=c[cur];
cur++;
}
//cout <<"start="<<start<<" ";
//cout <<endl;
mp[start]++;
}
}
}
}
return ;
}
Summer training #4的更多相关文章
- 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 Contests
2016 Multi-University Training Contest 1 2016 Multi-University Training Contest 2 2016 Multi-Univers ...
- 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) ...
- ACM: Gym 101047K Training with Phuket's larvae - 思维题
Gym 101047K Training with Phuket's larvae Time Limit:2000MS Memory Limit:65536KB 64bit IO F ...
- The Solution of UESTC 2016 Summer Training #1 Div.2 Problem C
Link http://acm.hust.edu.cn/vjudge/contest/121539#problem/C Description standard input/output After ...
- 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) ...
- 2014 Multi-University Training Contest 9#6
2014 Multi-University Training Contest 9#6 Fast Matrix CalculationTime Limit: 2000/1000 MS (Java/Oth ...
- 2016 Multi-University Training Contest 1
8/11 2016 Multi-University Training Contest 1 官方题解 老年选手历险记 最小生成树+线性期望 A Abandoned country(BH) 题意: 1. ...
随机推荐
- C#中的属性-Property
C#的属性一直都有用,但具体了解的不是很深,而且一些注意事项也没有太在意过,糊里糊涂的用着.这两天看了C#的书专门学习了一下属性,这才知道,原来属性也有这么多东西~ ~今天记录一下,算是对学习的一个检 ...
- 【POJ - 3262】Protecting the Flowers(贪心)
Protecting the Flowers 直接中文 Descriptions FJ去砍树,然后和平时一样留了 N (2 ≤ N ≤ 100,000)头牛吃草.当他回来的时候,他发现奶牛们正在津津有 ...
- 第12课.经典问题解析(const;指针和引用)
问题1:const什么时候为只读变量?什么时候是常量? const常量的判别准则: a.只有用字面量初始化的const常量才会进入符号表(直接初始化过的const为常量) b.被使用其他变量初始化的c ...
- JMeter-- ThreadGroup原理分析
JMeterEngine会驱动JMeter ThreadGroup启动Test Threads 执行测试,其本身也是一个Runnable,这里把测试驱动(JUnit或者其他类似main之类的)看作主线 ...
- 简单的搭载Spring cloud框架
大家不懂的可以在评论区给我留言
- 16.Azkaban的安装
工作流调度器azkaban 2.1 概述 2.1.1为什么需要工作流调度系统 l 一个完整的数据分析系统通常都是由大量任务单元组成: shell脚本程序,java程序,mapreduce程序.hiv ...
- [转帖]彻底理解cookie,session,token
彻底理解cookie,session,token https://www.cnblogs.com/moyand/p/9047978.html 发展史 1.很久很久以前,Web 基本上就是文档的浏览而已 ...
- JavaScript引用类型简单记录
Object Array instanceof Function 引用类型 - Object {} 等价于 new Object() 我们经常使⽤用对象来承载可选参数,⽽而⽤用 命名的形式参数来传递必 ...
- PAT B1018.锤子剪刀布(20)
一个没有通过,不知道为何 #include <cstdio> int change(char c) { if(c == 'B') return 0; if(c == 'C') return ...
- pb datawindow的用法
1. 使DataWindow列只能追加不能修改如何使DataWindow中的数据只能追加新记录而不能修改,利用 Column 的 Protect 属性可以很方便的做到这一点,方法如下:将每一列的 Pr ...