首页 > 其他分享 >【LGR-197-Div.2】洛谷 10 月月赛 I &「SFMOI」Round I(A,B,C)

【LGR-197-Div.2】洛谷 10 月月赛 I &「SFMOI」Round I(A,B,C)

时间:2024-10-02 18:44:16浏览次数:4  
标签:10 洛谷 cout ll SFMOI k1 ans x2 include

A.Strange Cake Game

对于小W,往下走最赚,对于小M往右走最赚,于是路线形成了个折线,直接对应竖坐标位置去看看横坐标符不符合要求即可

#include<iostream>
#include<algorithm>
#include<string>
#include<string.h>
#include<queue>
#include<deque>
#include<math.h>
#include<map>
#include<stack>
#include<set>
#include<vector>
#include<random>
using namespace std;
typedef  long long ll;
void fio()
{
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
} 
ll ksm(ll x,ll y)
{
	ll ans=1;
	while(y)
	{
		if(y&1)
		ans*=x;
		x*=x;
		y>>=1;
	}
	return ans;
}
ll gcd(ll x,ll y)
{
	if(y==0)
	return x;
	else
	return gcd(y,x%y);
}
int main()
{
	ll n,m;
	cin>>n>>m;
	ll k;
	cin>>k;
	ll ans=0;
	while(k--)
	{
		ll x,y;
		cin>>x>>y;
		if(x<=y)
		ans++;
	}
	cout<<ans<<endl;
}

B.Strange Madoka Game

将题目进行转化形成两个式子\(k1*x1+b1=m,k2*x2+b2=m\)
然后有\(k1*x1+b1=k2*x2+b2\)
随后左右模x2
有\((k1*x1+b1-b2)\)%\(x2=0\)
这里我取\(x2=4e8-1,x1=4e8\)
最后式子可转化成
\(k1\)%\(x2=(b2-b1)\)%\(x2\)
对于k1,他必须小于x2,否则\(k1*x2>1e17\),所以当\(b2-b1<=0,k1=b1-b2\),否则\(k1=x2-(b1-b2)\)
所以\(m=k1*x1+b1\)

#include<iostream>
#include<algorithm>
#include<string>
#include<string.h>
#include<queue>
#include<deque>
#include<math.h>
#include<map>
#include<stack>
#include<set>
#include<vector>
#include<random>
using namespace std;
typedef  long long ll;
//mt19937 rand(time(0));
void fio()
{
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
} 
ll ksm(ll x,ll y)
{
	ll ans=1;
	while(y)
	{
		if(y&1)
		ans*=x;
		x*=x;
		y>>=1;
	}
	return ans;
}
ll gcd(ll x,ll y)
{
	if(y==0)
	return x;
	else
	return gcd(y,x%y);
}
int main()
{
	ll t;
	cin>>t;
	ll x=4e8,y=(4e8-1);
	while(t--)
	{
		cout<<"? "<<x<<endl;
		cout.flush();
		ll j;
		cin>>j;
		cout<<"? "<<y<<endl;
		cout.flush();
		ll k;
		cin>>k;
		cout<<"! ";
		if(j==0&&k==0)
		{
			cout<<0<<endl;
		}
		else if(j==k)
		{
			cout<<j<<endl;
		}
		else
		{
			ll uo=(j-k)%y;
			ll c=y-uo;
			if(uo<=0)
			c=abs(uo);
			cout<<x*(c)+j<<endl;
		}
	}
}

C.Strange Homura Game

先将式子得出\(x1=m*k1+b1,x2=m*k2+b2\)
转化得\(x1-b1=m*k1,x2-b2=m*k2\)
现在只要使\(k1!=k2即可使答案m得出\)
这里取x最好取大于等于2e17的数,这样求出第一个\(k1*m\),
然后用\((k1*m-1)\),得出\(k2*m\)
这样保证\(k1=k2+1\),随后gcd即可

#include<iostream>
#include<algorithm>
#include<string>
#include<string.h>
#include<queue>
#include<deque>
#include<math.h>
#include<map>
#include<stack>
#include<set>
#include<vector>
#include<random>
#include<time.h>
using namespace std;
typedef  long long ll;
mt19937 rnd(time(0));
void fio()
{
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
} 
ll ksm(ll x,ll y)
{
	ll ans=1;
	while(y)
	{
		if(y&1)
		ans*=x;
		x*=x;
		y>>=1;
	}
	return ans;
}
ll gcd(ll x,ll y)
{
	if(y==0)
	return x;
	else
	return gcd(y,x%y);
}
int main()
{
	ll x=((ll)1e17)+rnd()%(ll)(1e17);
	ll t;
	cin>>t;
	while(t--)
	{
		ll j,k;
		cout<<"? "<<x<<endl;
		cout.flush();
		cin>>j;
		ll uo=x-j;//倍数 
		ll ko=uo-1;
		cout<<"? "<<ko<<endl;
		cout.flush();
		cin>>k;
		ll co=gcd(uo,ko-k);
		cout<<"! "<<co<<endl;
	}
}

标签:10,洛谷,cout,ll,SFMOI,k1,ans,x2,include
From: https://www.cnblogs.com/cjcf/p/18444972

相关文章

  • 题解:SP7973 ACPC10E - Sometimes, a penalty is good!
    比较简单的一道数学题。思路:计算小组赛的比赛总数。longlongstage1=G*T*(T-1)/2;每组有\(T\)个队伍,每个队伍都需要与其他\(T-1\)个队伍比赛,共有\(T\cdot(T-1)\)场比赛。共有\(G\)组,因此小组赛总比赛数为\(\frac{G\cdotT\cdot(T-1)}{2}\)。计算进入......
  • 题解:SP10242 ACPC11D - Dice on a Board
    思路递归生成所有的可能的筛子朝向,用DFS标记所有可达的位置,用dijkstra计算从起始位置到目标位置的最优路径,并确定在移动过程中能够获得的最大分数。generate函数generate用于生成所有可能的骰子朝向排列,\(mask\)作为参数,用于表示哪些数字已经被使用。使用二进制压缩。......
  • 10 - 2 ~ 10 - 3 模拟赛报告
    启动新赛季!10.2题目一览:题目名称躲避技能奶茶兑换券帮助神奇的变换题目类型传统传统传统传统文件名skillteahelpchange时空限制\(2s256M\)\(1s256M\)\(2s256M\)\(5s256M\)测试点数量\(25\)\(10\)\(20\)\(25\)请观看VCR,并回答作者表......
  • win11,vc22源码编译opencv410
    1.安装cmake 2.配代理,否则无法下载依赖包3.自行编译OpenCV源码步骤4.注意配置系统变量,重启机器https://blog.csdn.net/weixin_50648158/article/details/139742826亲测可用OpenCV4.10.0在Windows10,64位,vs2022下的编译及配置方法https://blog.csdn.net/yxfamyself/article......
  • LoongArch@微处理器体系结构专利技术研究方法@20241002
    微处理器体系结构专利技术研究方法第一辑:X86指令集总述 微处理器体系结构专利技术研究方法第二辑:x86多媒体指令集 微处理器体系结构专利技术研究方法第三辑:X86指令实现专利技术 ......
  • 10月做题记录
    10月做题记录✩trick✯会大部分,要\(tj\)提示✬会小部分/完全没想到,看了\(tj\)才会◈脑电波✡有某一算法的神秘通用性质⊗待补目录10月做题记录CF2018FSpeedbreakerCounting✬✩CF2018FSpeedbreakerCounting✬✩非常牛题目,就是学\(whk\)学傻了,乘法过后的取......
  • 2024.10 - 做题记录与方法总结
    赏赐的是CCF,收回的也是CCF-《CCF圣经》2024/10/01国庆快乐!P10856【MX-X2-T5】「CfzRound4」Xor-Forces题面:题目描述给定一个长度为\(n=2^k\)的数组\(a\),下标从\(0\)开始,维护\(m\)次操作:操作一:给定\(x\),设数列\(a'\)满足\(a'_i=a_{i\oplusx}\),将\(a\)......
  • 10.2 总结
    T1躲避技能赛时拿的是暴力的\(40\)分,没开long。40pts用LCA乱搞,枚举每一个人去哪里,复杂度\(\mathcalO(m!\logn)\)。AC给每一个躲避点打上\(-1\)标记,当前点打上\(1\)标记,每一次向上转移边长乘子树标记和即可。T2奶茶兑换券暴力不会。T3帮助40pts枚举每......
  • 痞子衡嵌入式半月刊: 第 108 期
    痞子衡嵌入式半月刊:第108期这里分享嵌入式领域有用有趣的项目/工具以及一些热点新闻,农历年分二十四节气,希望在每个交节之日准时发布一期。本期刊是开源项目(GitHub:JayHeng/pzh-mcu-bi-weekly),欢迎提交issue,投稿或推荐你知道的嵌入式那些事儿。上期回顾:《痞子衡嵌入式半月......
  • P1020 [NOIP1999 提高组] 导弹拦截
    P1020[NOIP1999提高组]导弹拦截参考材料需要抽象一下,第一问就可以抽象为最长不上升子序列,第二问可以抽象为最长上升子序列长度。就如下图的情况:然后可以先\(n^2\)做法做,因为\(n\ge100000\)所以要滚动数组,求最长不上升子序列可以反向从n开始递推。我是n^2我不好......