当前位置: 首页 > news >正文

AT_fps_24_b 整数の組

生成函数是简单的,列出生成函数 然后对后两个的分母因式分解发现能和前两项消掉,最后是 \([x^n]\frac{1}{(x-1)^2}\)

还有一种是枚举前两种,然后 \(d\)\(t=n-a-b\) 模 2 同余,且满足 \(3d\le t\) 所以看 \(\lfloor\frac{t}{3}\rfloor\) 中有多少个数与 \(t\) 同余。

还有一种比较高妙是 \(a,c\) 配对 \(b,d\) 配对,当 \(a+c\) 取得某值时 \(a,c\) 对应的方案唯一,\(b,d\) 同理。而 \(a+b+c+d=n\) 所以确定了 \(a+c\) 就相当于确定了 \(a,b,c,d\),而 \(a+c\in[0,n]\),所以一共有 \(n+1\) 种。

#include<bits/stdc++.h>
#include<ext/pb_ds/assoc_container.hpp>
#include<ext/pb_ds/hash_policy.hpp>
#define fin(x) freopen(#x".in","r",stdin)
#define fout(x) freopen(#x".out","w",stdout)
#define fr(x) fin(x),fout(x);
#define Fr(x,y) fin(x),fout(y)
#define INPUT(_1,_2,FILE,...) FILE
#define IO(...) INPUT(__VA_ARGS__,Fr,fr)(__VA_ARGS__)
using namespace std;
using namespace __gnu_pbds;
#define mp make_pair
#define pii pair<int,int>
#define fi first
#define se second
#define pb push_back
#define cfast ios::sync_with_stdio(false);cin.tie(0),cout.tie(0)
#define ll long long
#define ull unsigned long long
#define intz(x,y) memset((x),(y),sizeof((x)))
char *p1,*p2,buf[100000];
#define nc() (p1==p2 && (p2=(p1=buf)+fread(buf,1,100000,stdin),p1==p2)?EOF:*p1++)
#define tup(x) array<int,(x)>
inline ll read(){ll x=0,f=1;char ch=nc();while(ch<48||ch>57){if(ch=='-')f=-1;ch=nc();}while(ch>=48&&ch<=57)x=x*10+ch-48,ch=nc();return x*f;
}
//void write(int x){cout<<x<<' ';}
//void write(pii x){cout<<"P("<<x.fi<<','<<x.se<<")\n";}
//void write(vector<auto>x){for(auto i:x)write(i);cout<<'\n';}
//void write(auto *a,int l,int r){for(int i=l;i<=r;i++)write(a[i]);cout<<'\n';}
inline ll lowbit(ll x){return x&-x;}
inline int pcount(ll x){for(int i=0,res=0;;res+=(x>>i)&1,i++)if(i>60)return res;
}//struct mt{
//	ll v;
//	mt(){v=0;}
//	mt(int x){this->v=x;}
//	inline mt operator+(mt x){return {(v+x.v)%mod};}
//	inline mt operator-(mt x){return {(v+mod-x.v)%mod};}
//	inline mt operator*(mt x){return {1ll*v*x.v%mod};}
//};
//inline void add(mt &x,mt y){x=x+y;}
//mt qp(mt x,int y){mt res(1);for(;y;x=x*x,y>>=1)if(y&1)res=res*x;return res;}
const int mod=998244353;
inline void UesugiErii(){int n;ll ans=0;cin>>n;for(int a:{0,1})for(int b:{0,1,2}){int tmp=n-a-b;if(tmp<0)break;if(tmp&1)(ans+=((tmp/3)&1?(tmp/3+2)/2:(tmp/3+1)/2)%mod)%=mod;else (ans+=((tmp/3)&1?(tmp/3+1)/2:(tmp/3+2)/2)%mod)%=mod;}cout<<ans;
}
signed main(){//IO();//cfast;int _=1;//cin>>_;for(;_;_--)UesugiErii();return 0;
}
http://www.gsyq.cn/news/63233.html

相关文章:

  • 第五十篇
  • 我踩坑后总结:企业微信客服API接入客服系统,90%的人都搞错了!
  • 香橙派上进行MQTT数据存储客户端开发(一)基本环境配置
  • 编程中的枚举法与数学上的穷举法有何区别?
  • 《程序员修炼之道:从小工到专家》阅读笔记5
  • C# 图片加载引发的内存溢出异常
  • Mac 安装 4K Video Downloader v5.0.0.5303-1.dmg 方法(附安装包)
  • TPS的另外一层含义:绝对并发用户数 - BKY007
  • 笔记——OI中求逆元的几种方式(不含数学知识的讲解)
  • 2025国内公关公司排名推荐(整合权威数据源):十大机构深度对比,专业分析与选择指南
  • acme证书申请
  • [CEOI 2025] Equal Mex 题解
  • Open WebUI大模型输出完成后新对话响应延迟、输出变慢问题
  • 2025年11月液体容器磁致伸缩液位计,格雷母线,lvdt位移传感器厂家最新推荐,容器监测与位移适配指南
  • Python中isdigit、isdecimal、isnumeric区别详解
  • 3D 场景预加载应用实现 | 图扑软件
  • 2025年11月GEO公司推荐:全链路破局企业流量困境,AI驱动搜索优化实力全解析
  • 医疗器械渠道管理革新:数字化平台如何解决行业痛点
  • 如何在VSCode中Debug(带有参数,name、program、$file、args、pickArgs、指定虚拟环境)
  • 适合应届生:零经验专业简历模板TOP4
  • 2025年简约智能家居照明灯品牌推荐,让生活更智能
  • [论文阅读] AI | 大语言模型服务框架服务级目标和系统级指标优化研究
  • 2025年11月治鼻炎产品推荐:高性价比解决方案与市场热门排行榜
  • 蓝牙音频协议——安卓开发
  • 2025年11月治鼻炎产品推荐:一份详尽的清单与选择指南
  • 成为中国中小制造业企业数字营销领域的引领者 ——纪实西安动力无限的信息化赋能之路
  • SKI欧洲原装进口瓷砖:汇聚国际匠心,打造高端家居空间
  • Java NIO框架和传统的IO框架有什么区别?
  • 如何在Java中使用NIO框架?
  • 为什么说白瑞芳是最适合基础巩固的高中数学老师?