[Codeforces Round #673 (Div. 2) ]

题目链接#

A. Copy-paste

思路:

贪心的策略。每次只加上最小的就可以了

#include<bits/stdc++.h>
using namespace std;
const int INF=0x3f3f3f3f;
typedef long long ll;
ll a[1010];
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
ll t;
cin>>t;
while(t--)
{
ll ans=0,n,k;
cin>>n>>k;
for(ll i=0; i<n; i++)
cin>>a[i];
sort(a,a+n);
for(ll i=1; i<n; i++)
{
ans+=(k-a[i])/a[0];
}
cout<<ans<<"\n";
}
return 0;
}

B. Two Arrays

思路:

晚上的思路是用hashmap来实现...但做着做着到了12点,做不下去了就耻辱得下机。。

看群里也有人在讨论这道题..各种想法的都有,结果大家都想多了。这不就是一道贪心题/doge

以\(T/2\)作为界限,小的涂白(1),大的涂黑(0)。边读入边做就行了。

《论审题的重要性》

#include<bits/stdc++.h>
using namespace std;
const int INF=0x3f3f3f3f;
typedef long long ll;
const int max_n=1e5+5;
ll a[max_n];// c whilte d black
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
ll t;
cin>>t;
while(t--)
{
memset(a,0,sizeof(a));
ll n,k,cnt=0,x;
cin>>n>>k;
for(ll i=0; i<n; i++)
{
cin>>x;
if (x*2==k)
a[i]=(cnt++)%2;
else if (x*2<k)
a[i]=1; }
for(ll i=0; i<n; i++)
cout<<a[i]<<' ';
cout<<"\n";
}
return 0;
}

下面的题目等div3结束抽空补了

Codeforces Round #673 (Div. 2)的更多相关文章

  1. Codeforces Round #673 (Div. 2) A. Copy-paste(贪心)

    题目链接:https://codeforces.com/contest/1417/problem/A 题意 给出一个大小为 $n$ 的数组 $a$,每次操作可以选择两个数,然后将一个数加到另一个数上, ...

  2. Codeforces Round #673 (Div. 2) B. Two Arrays(数学)

    题目链接:https://codeforces.com/contest/1417/problem/B 题意 定义 $f(a)$ 为数组 $a$ 中满足: $i < j$ $a_i + a_j = ...

  3. Codeforces Round #673 (Div. 2) C. k-Amazing Numbers(思维)

    题目链接:https://codeforces.com/contest/1417/problem/C 题意 给出一个大小为 $n$ 的数组 $a$,计算当 $k$ 从 $1$ 到 $n$ 取值时在所有 ...

  4. Codeforces Round #673 (Div. 2) D. Make Them Equal(数论/构造)

    题目链接:https://codeforces.com/contest/1417/problem/D 题意 给出一个大小为 $n$ 的正整数数组 $a$ ,每次操作如下: 选择 $i,j$ 和 $x$ ...

  5. Codeforces Round #673 (Div. 2) C. k-Amazing Numbers (DP,思维)

    题意:有一组数,分别用长度从\([1,n]\)的区间去取子数组,要求取到的所有子数组中必须有共同的数,如果满足条件数组共同的数中最小的数,否则输出\(-1\). 题解:我们先从后面确定每两个相同数之间 ...

  6. Codeforces Round #673 (Div. 2) B. Two Arrays (贪心)

    题意:给你一组数\(a\)和一个数\(T\),将这组数分为两组\(c\)和\(d\),定义\(f(x)\)为数组\(x\)中任意两个不同元素的和为\(T\)的个数,问为了使\(min(f(c)+f(d ...

  7. Codeforces Round #366 (Div. 2) ABC

    Codeforces Round #366 (Div. 2) A I hate that I love that I hate it水题 #I hate that I love that I hate ...

  8. Codeforces Round #354 (Div. 2) ABCD

    Codeforces Round #354 (Div. 2) Problems     # Name     A Nicholas and Permutation standard input/out ...

  9. Codeforces Round #368 (Div. 2)

    直达–>Codeforces Round #368 (Div. 2) A Brain’s Photos 给你一个NxM的矩阵,一个字母代表一种颜色,如果有”C”,”M”,”Y”三种中任意一种就输 ...

随机推荐

  1. Next Cloud通过修改数据库表,达到替换文件而不改变分享的链接地址的效果,以及自定义分享链接地址

    Next Cloud如何通过修改数据库表,达到替换文件而不改变分享的链接地址的效果,以及自定义分享的链接地址 本文首发于我的个人博客:https://chens.life/nextcloud-chan ...

  2. 区块链入门到实战(21)之以太坊(Ethereum) – 分布式应用(DApp)

    作用:用户交互 分布式应用(DApp)是运行在区块链之上的应用程序,支持区块链网络中用户之间的交互. DApp(decentralized application)的后端代码运行在区块链网络上,这个可 ...

  3. jdk 功能变化

    JDK的变化 JDK1.5 JDK1.6 jdk1.7 1. 添加自动装箱,拆箱   1. =后可以省略泛型, 见ArrayList 2. try后加一个(), 定义流对象,作用域在try里 jdk1 ...

  4. CSAPP bomb分析

    CSAPP bomb分析 问题介绍 这是一个关于反汇编方面的问题,根据已有的二进制代码来推测程序中的特定条件,主要参考了以下各个博客: CSDN 1 CSDN 2 CSDN 3 CSDN 4 stac ...

  5. composer版本号前面`^`和`~`的区别

    ~1.2.3表示: 1.2.3 <= 版本号 < 1.3.0 ^1.2.3表示: 1.2.3 <= 版本号 < 2.0.0 ~1.2 表示: 1.2.0 <= 版本号 & ...

  6. Android开发之Toast吐司的一个封装好的工具类。带有源代码java文件,

    import android.content.Context; import android.widget.Toast; //Toast统一管理类 public class T { private T ...

  7. Ajax提交数据判断员工编号是否存在,及自动填充与员工编号所对应的员工姓名。

    JSP页面中所需要的JavaScript事件及Ajax <script type="text/javascript"> function checkEmpNo(id){ ...

  8. shell小技巧(5)计算当前目录下一级子目录的数量

    方法1: ls -al |grep -E "^d" |grep -v "\.$" |wc -l 详解: -a 列出目录下的所有文件,包含以.开头的隐藏文件: & ...

  9. 同样是logback1.11,更换了log配置后,无论是否有线程持续不断写入log文件,log文件会按设定以日期序号轮换

    上次发现了logback1.11的一个bug,即有线程持续写入log,则log文件不会按设定模式进行轮换. 但发现同样采用logback1.11的另外一个工程,它的日志文件就没有错误,于是参照其配置文 ...

  10. 【Java】一句话获得你的IP地址

    System.out.println(java.net.InetAddress.getLocalHost().getHostAddress());