A题:

题意:判断火星上的节假日最多和最少

分析:除以7,然后我们对原数模7的余数进行判断一下即可

 #include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <vector>
#include <algorithm>
#include <set>
#include <map>
#include <bitset>
#include <cmath>
#include <queue>
#include <stack>
using namespace std;
int n;
int main()
{
while(cin>>n)
{
int minx,mx;
int t=n/;
t*=;
if(n%==){
minx=mx=t;
}else if(n%==){
minx=t;
mx=t+;
}else if(n%==){
minx=t+;
mx=t+;
}else{
minx=t;
mx=t+;
}
cout<<minx<<" "<<mx<<endl;
}
return ;
}

B题:

题意:有n个机器人,第i个机器人纪录其前面的i-1个数和其本身,问第k个数是多少

分析:判断一下第k个属于第几个机器人的即可

 #include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <vector>
#include <algorithm>
#include <set>
#include <map>
#include <bitset>
#include <cmath>
#include <queue>
#include <stack>
using namespace std;
const int maxn=;
long long dp[maxn];
int a[maxn];
int n;
int k;
int main()
{
while(cin>>n>>k)
{
for(int i=;i<n;i++)
cin>>a[i];
int h;
int ans;
memset(dp,,sizeof(dp));
for(int i=;i<=n;i++){
dp[i]=dp[i-]+i;
if(dp[i]>=k){
h=i; break;
}
}
int flag=;
if(dp[h]==k){
flag=;
}else{
h--; flag=;
}
if(flag) cout<<a[h-]<<endl;
else{
int t=k-dp[h];
//cout<<"t: "<<t<<endl;
cout<<a[t-]<<endl;
}
}
return ;
}

C题:

题意:n个科学家来自不同国家,每个科学家对应懂一种语言,有双语电影,其中声音和文字是不同语言,希望找到一个电影院,让尽可能多的科学家能看懂,如果声音相同的情况比较文字尽量多的

分析:因为数据范围太大,用map进行统计每会说没中语言的科学家的人数,然后进行排序即可

 #include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <vector>
#include <algorithm>
#include <set>
#include <map>
#include <bitset>
#include <cmath>
#include <queue>
#include <stack>
using namespace std;
const int maxn=;
map<int,int> vis;
typedef struct p
{
int id;
int aud,sub;
}p;
p s[maxn];
bool cmp(p a,p b)
{
if(a.aud==b.aud)
return a.sub>b.sub;
else
return a.aud>b.aud;
}
int main()
{
int n,m;
cin>>n;
for(int i=;i<n;i++){
int x;
scanf("%d",&x);
vis[x]++;
}
cin>>m;
for(int i=;i<m;i++){
int y;
scanf("%d",&y);
s[i].id=i+;
s[i].aud=vis[y];
}
for(int i=;i<m;i++){
int z;
scanf("%d",&z);
s[i].sub=vis[z];
}
sort(s,s+m,cmp);
printf("%d\n",s[].id);
return ;
}

D题:

题意:做一个蛋糕需要n种成份,需要每种成分ai,每种成分有bi,同时还有k个能转换成任意成分的物品,问最多能构成多少物品

分析:可以以bi除以ai为序,然后用一个优先队列进行维护,期间模拟k个物品的情况即可

 #include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <vector>
#include <algorithm>
#include <set>
#include <map>
#include <bitset>
#include <cmath>
#include <queue>
#include <stack>
using namespace std;
const int maxn=;
typedef struct p
{
int a,b;
int mul,mod;
friend bool operator<(p x,p y){
return x.mul>y.mul;
}
}p;
p s[maxn];
int n,k;
int main()
{
while(cin>>n>>k)
{
for(int i=;i<n;i++)
cin>>s[i].a;
for(int i=;i<n;i++){
cin>>s[i].b;
s[i].mul=s[i].b/s[i].a;
s[i].mod=s[i].b%s[i].a;
}
priority_queue<p> que;
for(int i=;i<n;i++)
que.push(s[i]);
while(true){
p h=que.top();
int t=h.a-h.mod;
k-=t;
if(k<) break;
//cout<<"t: "<<t<<endl;
h.b+=t;
h.mod=h.b%h.a;
h.mul=h.b/h.a;
//cout<<h.mul<<endl;
if(k>=){
que.pop();
que.push(h);
if(k==)
break;
}
}
int z=que.top().mul;
cout<<z<<endl;
}
return ;
}

Codeforces #350的更多相关文章

  1. codeforces 350 div2 D Magic Powder - 2 二分

    D2. Magic Powder - 2 time limit per test 1 second memory limit per test 256 megabytes input standard ...

  2. codeforces 350 div2 C. Cinema map标记

    C. Cinema time limit per test 2 seconds memory limit per test 256 megabytes input standard input out ...

  3. Codeforces Round #350 (Div. 2) E. Correct Bracket Sequence Editor 模拟

    题目链接: http://codeforces.com/contest/670/problem/E 题解: 用STL的list和stack模拟的,没想到跑的还挺快. 代码: #include<i ...

  4. Codeforces Round #350 (Div. 2) D2. Magic Powder - 2

    题目链接: http://codeforces.com/contest/670/problem/D2 题解: 二分答案. #include<iostream> #include<cs ...

  5. Codeforces Round #350 (Div. 2) E. Correct Bracket Sequence Editor (链表)

    题目链接:http://codeforces.com/contest/670/problem/E 给你n长度的括号字符,m个操作,光标初始位置是p,'D'操作表示删除当前光标所在的字符对应的括号字符以 ...

  6. Codeforces Round #350 (Div. 2)解题报告

    codeforces 670A. Holidays 题目链接: http://codeforces.com/contest/670/problem/A 题意: A. Holidays On the p ...

  7. Codeforces Round #350 (Div. 2) E. Correct Bracket Sequence Editor 栈 链表

    E. Correct Bracket Sequence Editor 题目连接: http://www.codeforces.com/contest/670/problem/E Description ...

  8. Codeforces Round #350 (Div. 2) D1. Magic Powder - 1 二分

    D1. Magic Powder - 1 题目连接: http://www.codeforces.com/contest/670/problem/D1 Description This problem ...

  9. Codeforces Round #350 (Div. 2) C. Cinema 水题

    C. Cinema 题目连接: http://www.codeforces.com/contest/670/problem/C Description Moscow is hosting a majo ...

随机推荐

  1. js里父页面与子页面的相互调用

    一.在页面里用 open 打开的子页面: 1.子页面调用父页面的方法,包括子页面给父页面传值: window.opener.methodName(); window.opener.methodName ...

  2. Note over Chinese Encodings

    I been confused years ago. Till recently I collected my thoughts together, and now I am clear about ...

  3. Android ViewDragHelper完全解析 自定义ViewGroup神器

    Android ViewDragHelper完全解析 自定义ViewGroup神器   转载请标明出处: http://blog.csdn.net/lmj623565791/article/detai ...

  4. JMeter-使用Badboy录制Web测试脚本

    JMeter是纯Java编写的软件功能和性.能测试工具,其录制脚本过于笨拙和复杂.而Badboy是用C++开发的动态应用测试工具,其拥有强大的屏幕录制和回放功能,同时提供图形结果分析功能,刚好弥补了J ...

  5. java基本输入型数据Scanner

    import java.util.Scanner; public class Example2_3 { public static void main (String args[ ]){ System ...

  6. c++ 中bool 的默认值

    比如在Test.h中定义变量: _isFirst; //Test.h头文件 #ifndef __TEST_H__ #define __TEST_H__ class Test{ private: boo ...

  7. 学习笔记——Windows7下Android与Cocos2dx的安装配置

    1.下载eclipse.安卓SDK.配置ADT等,android开发必备,略. 2.下载NDK.Cocos2dx.Cygwin 2.1NDK下载,请下载对应的32位或者64的较大的压缩包(较小的只有t ...

  8. ubuntu server 12.04 源

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 deb http://mirrors.163.com/ubuntu/ precise  ...

  9. dfs和bfs的简单总结

    首先是dfs,又名深度优先搜索.看名字就知道,它的核心思想就是一直搜索,先在一条路上面一路撸到底,如果到底没有办法前进了,那么判断是否到达终点,如果没有到达,那么就回溯到之前的点再撸. dfs的要点: ...

  10. cordova插件开发-1

    这是初级编,实现了js调用Android代码 首先需要编写java代码: public class AppUpdate extends CordovaPlugin { @Override public ...