A - Rating Goal


Time limit : 2sec / Memory limit : 256MB

Score : 100 points

Problem Statement

Takahashi is a user of a site that hosts programming contests.
When a user competes in a contest, the rating of the user (not necessarily an integer) changes according to the performance of the user, as follows:

  • Let the current rating of the user be a.
  • Suppose that the performance of the user in the contest is b.
  • Then, the new rating of the user will be the avarage of a and b.

For example, if a user with rating 1 competes in a contest and gives performance 1000, his/her new rating will be 500.5, the average of 1 and 1000.

Takahashi's current rating is R, and he wants his rating to be exactly G after the next contest.
Find the performance required to achieve it.

Constraints

  • 0≤R,G≤4500
  • All input values are integers.

Input

Input is given from Standard Input in the following format:

R
G

Output

Print the performance required to achieve the objective.


Sample Input 1

Copy
2002
2017

Sample Output 1

Copy
2032

Takahashi's current rating is 2002.
If his performance in the contest is 2032, his rating will be the average of 2002 and 2032, which is equal to the desired rating, 2017.


Sample Input 2

Copy
4500
0

Sample Output 2

Copy
-4500

Although the current and desired ratings are between 0 and 4500, the performance of a user can be below 0.

#include<algorithm>
#include<iostream>
#include<cstdio>
#include<map>
using namespace std; const int N = + ; int c, n;
struct node{
int total_time = , total_solve = , num;
map<int, int> state;
}Node[N]; int main(){
double a, b;
cin >> a >> b;
cout << b * - a <<endl;
}

B - Addition and Multiplication


Time limit : 2sec / Memory limit : 256MB

Score : 200 points

Problem Statement

Square1001 has seen an electric bulletin board displaying the integer 1. He can perform the following operations A and B to change this value:

  • Operation A: The displayed value is doubled.
  • Operation B: The displayed value increases by K.

Square1001 needs to perform these operations N times in total. Find the minimum possible value displayed in the board after N operations.

Constraints

  • 1≤N,K≤10
  • All input values are integers.

Input

Input is given from Standard Input in the following format:

N
K

Output

Print the minimum possible value displayed in the board after N operations.


Sample Input 1

Copy
4
3

Sample Output 1

Copy
10

The value will be minimized when the operations are performed in the following order: A, A, B, B.
In this case, the value will change as follows: 1 → 2 → 4 → 7 → 10.


Sample Input 2

Copy
10
10

Sample Output 2

Copy
76

The value will be minimized when the operations are performed in the following order: A, A, A, A, B, B, B, B, B, B.
In this case, the value will change as follows: 1 → 2 → 4 → 8 → 16 → 26 → 36 → 46 → 56 → 66 → 76.

By the way, this contest is AtCoder Beginner Contest 076.

#include<algorithm>
#include<iostream>
#include<cstdio>
#include<map>
using namespace std; int main(){
int n, k;
int a = ;
cin >> n >> k;
for(int i = ; i <= n; i++){
if(a + k < * a) a += k;
else a *= ;
}
cout << a << endl;
}
#include<bits/stdc++.h>

using namespace std;

int n, k;

int DFS(int n, int val){
if(n == ) return val;
int a = DFS(n - , val * );
int b = DFS(n - , val + k);
return a > b ? b : a;
}
int main(){
cin >> n >> k;
cout << DFS(n, ) << endl;
}

C - Dubious Document 2


Time limit : 2sec / Memory limit : 256MB

Score : 300 points

Problem Statement

E869120 found a chest which is likely to contain treasure.
However, the chest is locked. In order to open it, he needs to enter a string S consisting of lowercase English letters.
He also found a string S', which turns out to be the string S with some of its letters (possibly all or none) replaced with ?.

One more thing he found is a sheet of paper with the following facts written on it:

  • Condition 1: The string S contains a string T as a contiguous substring.
  • Condition 2: S is the lexicographically smallest string among the ones that satisfy Condition 1.

Print the string S.
If such a string does not exist, print UNRESTORABLE.

Constraints

  • 1≤|S'|,|T|≤50
  • S' consists of lowercase English letters and ?.
  • T consists of lowercase English letters.

Input

Input is given from Standard Input in the following format:

S
T'

Output

Print the string S.
If such a string does not exist, print UNRESTORABLE instead.


Sample Input 1

Copy
?tc????
coder

Sample Output 1

Copy
atcoder

There are 26 strings that satisfy Condition 1: atcoderbtcoderctcoder,..., ztcoder. Among them, the lexicographically smallest is atcoder, so we can say S=atcoder.


Sample Input 2

Copy
??p??d??
abc

Sample Output 2

Copy
UNRESTORABLE

There is no string that satisfies Condition 1, so the string S does not exist.

#include<algorithm>
#include<iostream>
#include<cstdio>
#include<map>
#include<set>
using namespace std;
string s, t;
set<string> S; void Work(){
int lens = s.size();
int lent = t.size();
for(int i = ; i < lens; i++){
if(s[i] == '?' || s[i] == t[]){
string tmp = s;
for(int j = ; j < i; j++) if(tmp[j] == '?') tmp[j] ='a';
bool can = false;
for(int j = ; j < lent; j++){
if(tmp[i+j]!= '?' && tmp[i+j] != t[j]) break;
tmp[i+j] = t[j];
if(j == lent - ) can = true;
}
if(can){
for(int j = i + lent; j < lens; j++) if(tmp[j] == '?') tmp[j] = 'a';
S.insert(tmp);
}
}
}
if(S.size() == ) cout << "UNRESTORABLE" << endl;
else cout << *S.begin() << endl;
}
int main(){
cin >> s >> t;
Work();
}

AtCoder Beginner Contest 076的更多相关文章

  1. AtCoder Beginner Contest 100 2018/06/16

    A - Happy Birthday! Time limit : 2sec / Memory limit : 1000MB Score: 100 points Problem Statement E8 ...

  2. AtCoder Beginner Contest 052

    没看到Beginner,然后就做啊做,发现A,B太简单了...然后想想做完算了..没想到C卡了一下,然后还是做出来了.D的话瞎想了一下,然后感觉也没问题.假装all kill.2333 AtCoder ...

  3. AtCoder Beginner Contest 053 ABCD题

    A - ABC/ARC Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Smeke has ...

  4. AtCoder Beginner Contest 136

    AtCoder Beginner Contest 136 题目链接 A - +-x 直接取\(max\)即可. Code #include <bits/stdc++.h> using na ...

  5. AtCoder Beginner Contest 137 F

    AtCoder Beginner Contest 137 F 数论鬼题(虽然不算特别数论) 希望你在浏览这篇题解前已经知道了费马小定理 利用用费马小定理构造函数\(g(x)=(x-i)^{P-1}\) ...

  6. AtCoder Beginner Contest 079 D - Wall【Warshall Floyd algorithm】

    AtCoder Beginner Contest 079 D - Wall Warshall Floyd 最短路....先枚举 k #include<iostream> #include& ...

  7. AtCoder Beginner Contest 064 D - Insertion

    AtCoder Beginner Contest 064 D - Insertion Problem Statement You are given a string S of length N co ...

  8. AtCoder Beginner Contest 075 D - Axis-Parallel Rectangle【暴力】

    AtCoder Beginner Contest 075 D - Axis-Parallel Rectangle 我要崩溃,当时还以为是需要什么离散化的,原来是暴力,特么五层循环....我自己写怎么都 ...

  9. AtCoder Beginner Contest 075 C bridge【图论求桥】

    AtCoder Beginner Contest 075 C bridge 桥就是指图中这样的边,删除它以后整个图不连通.本题就是求桥个数的裸题. dfn[u]指在dfs中搜索到u节点的次序值,low ...

随机推荐

  1. HGOI20190814 省常中互测7

    Problem A 中间值 对于$2$个非严格单增序列$\{A_n\} , \{B_n\}$,维护下列两个操作: 1 x y z: (x=0)时将$A_y = z$ , (x=1)时将$B_y = z ...

  2. 3.决策树ID3算法原理

    1.决策树的作用 主要用于解决分类问题的一种算法 2.建立决策树的3中常用算法 1).ID3--->信息增益 2).c4.5--> 信息增益率 4).CART Gini系数 3.提出问题: ...

  3. 函数返回指针类型(strchr函数)

    #include<stdio.h> #include<string.h> char *mystrchr(char *s,char c) { while(*s) { if(*s ...

  4. Android的SQLite基本操作

    涉及SQLite的增删改查,结果用log显示 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 ...

  5. Dynamic Web Module 2.3 change to 3.0 maven工程解决办法

    pom.xml <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <a ...

  6. PriorityQueue源码阅读

    最小堆:优先级权重越小 离顶点越近 案例 实现一个top max n publish static int[] topN(int[] nums, int l){ int[] result = new ...

  7. Dubbo Monitor Simple 监控中心

    下载项目源码(其中的 dubbo-registry-simple 代表简单的注册中心,用于开发测试,生产环境一般用zookeeper) https://github.com/apache/incuba ...

  8. https的那些坑

    1.时间 一些老手机不是系统自动对时,时间错误会报错. com.android.volley.NoConnectionError: javax.net.ssl.SSLHandshakeExceptio ...

  9. Android内存Activity泄露:Handler与Threads

    Java使用有向图机制,通过GC自动检查内存中的对象(什么时候检查由虚拟机决定),如果GC发现一个或一组对象为不可到达状态,则将该对象从内存中回收.也就是说,一个对象不被任何引用所指向,则该对象会在被 ...

  10. PDS常用快捷键

    绿色在Layout和Router中共用 1.PDS常用快捷键:2019-07-28 17:06:07 快捷键 说明 备注 shiftt + 左键双击 布线状态下,进行过孔放置   ctrl + 左键双 ...