Codeforces Round #676 (Div. 2) A - D个人题解(E题待补)
1421A. XORwice
题目链接:Click Here
// Author : RioTian
// Time : 20/10/18
#include <bits/stdc++.h>
#define ms(a, b) memset(a, b, sizeof a)
using namespace std;
typedef long long ll;
ll n, m, _;
void solve() {
    cin >> n >> m;
    cout << (n ^ m) << endl;
}
int main() {
    // freopen("in.txt", "r", stdin);
    ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
    cin >> _;
    while (_--) solve();
}
1421B. Putting Bricks in the Wall
题目链接:Click Here
如果选择S的邻居为1,我们就可以F使为0的邻居,就没有办法从S到F,但这在最坏的情况下需要4个开关,这是不够的。 幸运的是,为了减少到2个开关,只需反过来考虑,使相邻S的正方形变为0,使相邻的正方形变为F 1。必须存在最多具有两个开关的两个正方形的解,并且您不会从S到F,因为被迫选择1(或0),并且无法通过与F相反的邻居。
// Author : RioTian
// Time : 20/10/18
#include <bits/stdc++.h>
#define ms(a, b) memset(a, b, sizeof a)
using namespace std;
typedef long long ll;
ll n, m, _;
char x[210][210];
void solve() {
    cin >> n;
    for (int i = 1; i <= n; i++) cin >> x[i] + 1;
    int a = x[1][2] - '0', b = x[2][1] - '0', c = x[n][n - 1] - '0',
        d = x[n - 1][n] - '0';
    if (a == b && c == d && a != c)
        cout << 0 << endl;
    else if (a != b && c != d)
        cout << 2 << endl
             << 1 << " " << 2 << endl
             << (a == c ? n - 1 : n) << " " << (a == c ? n : n - 1) << endl;
    else if (a != b)
        cout << 1 << endl
             << (a == c ? 1 : 2) << ' ' << (a == c ? 2 : 1) << endl;
    else if (c != d)
        cout << 1 << endl
             << (a == c ? n : n - 1) << ' ' << (a == c ? n - 1 : n) << endl;
    else
        cout << 2 << endl << 1 << ' ' << 2 << endl << 2 << " " << 1 << endl;
}
int main() {
    // freopen("in.txt", "r", stdin);
    ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
    cin >> _;
    while (_--) solve();
}
#python
import sys
input = sys.stdin.readline
I = lambda : list(map(int,input().split()))
t,=I()
for _ in range(t):
	n,=I()
	l=[input().strip() for i in range(n)]
	an=[]
	le=[0,0,1,1,1];p=[1,1,0,0,0]
	rq=[l[0][1],l[1][0],l[1][1],l[2][0],l[0][2]]
	pos=[[1,2],[2,1],[2,2],[3,1],[1,3]]
	ct=cp=0;a1=[]
	for i in range(5):
		if le[i]!=int(rq[i]):
			ct+=1
			a1.append(pos[i])
	for i in range(5):
		if p[i]!=int(rq[i]):
			cp+=1
			an.append(pos[i])
	if ct<=cp:
		an=a1
	print(len(an))
	for i in an:
		print(*i)
1421C. Palindromifier
题目链接:Click Here
这道题写的挺懵的,一开始都没理解题意
被dalao提醒以后然后发现是构造题,根据题目说的两种方案:
对于任何字符串都可以先 $L ,i = 2 \(,然后\)R,i = 2 $ + \(R, i = 7\)。一定能构造需所需的字符串
// Author : RioTian
// Time : 20/10/18
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
string s;
int main() {
    // freopen("in.txt","r",stdin);
    ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
    cin >> s;
    cout << "3\nL 2\nR 2\n";
    cout << "R " << 2 * s.size() - 1 << endl;
}
print('3\nL 2\nR 2\nR',len(input())*2-1)
1421D. Hexagons (补)
题目链接:Click Here
// Author : RioTian
// Time : 20/10/18
#include <bits/stdc++.h>
using namespace std;
#define ll long long
int inf = 1e9 + 7;
ll x, y, c1, c2, c3, c4, c5, c6;
ll check(ll ad) {
    ll ans = 0;
    if (ad > 0)
        ans += ad * c1;
    else
        ans += -ad * c4;
    if (x - ad > 0)
        ans += (x - ad) * c6;
    else
        ans += (ad - x) * c3;
    if (y - ad > 0)
        ans += (y - ad) * c2;
    else
        ans += (ad - y) * c5;
    return ans;
}
void solve() {
    cin >> x >> y >> c1 >> c2 >> c3 >> c4 >> c5 >> c6;
    ll l = -inf, r = inf;
    while (l < r) {
        ll mid = l + r >> 1;
        if (check(mid) < check(mid + 1))
            r = mid;
        else
            l = mid + 1;
    }
    cout << min({check(l), check(l + 1), check(l - 1)}) << '\n';
}
int main() {
    int t;
    cin >> t;
    while (t--) solve();
}
1421E. Swedish Heroes (补)
题目链接:Click Here
Codeforces Round #676 (Div. 2) A - D个人题解(E题待补)的更多相关文章
- Codeforces Round #604 (Div. 2) A,B,C【D题待补】
		思路:直接暴力判断就OK了 #include<bits/stdc++.h> using namespace std; #define int long long signed main() ... 
- Codeforces Round #297 (Div. 2)A. Vitaliy and Pie 水题
		Codeforces Round #297 (Div. 2)A. Vitaliy and Pie Time Limit: 2 Sec Memory Limit: 256 MBSubmit: xxx ... 
- Codeforces Round #298 (Div. 2) A、B、C题
		题目链接:Codeforces Round #298 (Div. 2) A. Exam An exam for n students will take place in a long and nar ... 
- Codeforces Round #267 (Div. 2) C. George and Job(DP)补题
		Codeforces Round #267 (Div. 2) C. George and Job题目链接请点击~ The new ITone 6 has been released recently ... 
- Codeforces Round #676 (Div. 2)【ABCD】
		比赛链接:https://codeforces.com/contest/1421 A. XORwice 题意 给出两个正整数 \(a.b\),计算 \((a \oplus x) + (b \oplus ... 
- Codeforces Round #676 (Div. 2) XORwice、Putting Bricks in the Wall、Palindromifier
		题目链接:XORwice 题意:给你两个数a.b.求一个数x,使得((a异或x)+(b异或x))这个值最小,输出最小那个x 题解: 输出(a|b)-(a&b)就行(猜了一手 代码: #incl ... 
- Codeforces Round #354 (Div. 2) A. Nicholas and Permutation 水题
		A. Nicholas and Permutation 题目连接: http://www.codeforces.com/contest/676/problem/A Description Nichol ... 
- Codeforces Round #384 (Div. 2) C. Vladik and fractions 构造题
		C. Vladik and fractions 题目链接 http://codeforces.com/contest/743/problem/C 题面 Vladik and Chloe decided ... 
- Codeforces Round #384 (Div. 2) A. Vladik and flights 水题
		A. Vladik and flights 题目链接 http://codeforces.com/contest/743/problem/A 题面 Vladik is a competitive pr ... 
随机推荐
- 老男孩教育python全栈第22期Day15笔记
			day15 今日内容大纲 昨日内容回顾作业讲解 装饰器:完美的呈现了开放封闭原则.装饰器的本质:闭包. def wraper(f): def inner(*args, **kwargs): " ... 
- Python全栈工程师系列学习之学习记录
			@ 目录 前言 Day 01 一.python的历史和种类 二.安装python解释器以及配置环境变量 三.变量.常量和注释 Day 02 Day 03 Day 04 Day 05 Day 06 一. ... 
- Tomcat vs Jetty vs Undertow性能对比
			Tomcat,Jetty和Undertow是目前比较主流的3款Servlet容器,而且Spring Boot框架还提供了对它们的集成支持(默认使用的是Tomcat),网络上有许多文章都在介绍Under ... 
- [LeetCode] 448. 找到所有数组中消失的数字(思维)
			题目 给定一个范围在 1 ≤ a[i] ≤ n ( n = 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次. 找到所有在 [1, n] 范围之间没有出现在数组中的数字. 您 ... 
- Shell学习(一)认识Shell
			一.啥是Shell Shell : 一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 既是一种命令语言,又是一种程序设计语言. Shell脚本 : 一种为 shell 编写的 ... 
- Linux常用字段
			cd 切换路径 vim,vi 打开文档 ls 查看文件信息 chmod 修改文件或目录的权限 useradd 添加用户 cat 查看纯文本文件(少内容) rm 删除文件或目录 mv 剪切文件或文件重 ... 
- Windows无法安装到GPT格式磁盘的根本解决办法 - 初学者系列  - 学习者系列文章
			上次在MSDN系统QQ群里有朋友问到在安装操作系统的时候有个问题:Windows无法安装到GPT格式磁盘,见图: 我在这里说下,使用网上方法的都是小白,就是说网上那些都是小白.下面介绍如何正确安装操作 ... 
- JS中的DOM对象
			DOM对象 1. DOM树 当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model),通过 HTML DOM对象,可访问 JavaScript HTML 文档的所有 ... 
- 一种统计ListView滚动距离的方法
			注:本文同步发布于微信公众号:stringwu的互联网杂谈 一种统计ListView滚动距离的方法 ListView做为Android中最常使用的列表控件,主要用来显示同一类的数据,如应用列表,商品列 ... 
- LeetCode刷题的一点个人建议和心得
			目录 1. 为什么我们要刷LeetCode? 2. LeetCode的现状和问题 3. 本文的初衷 4. LeetCode刷题建议 4.1入门数据结构,打基础阶段 4.2 建立 ... 
